Message posté par : Mafate (sylvain_burgaud(a)yahoo.fr)
----------------------------------------
Bonjour à tous,
Dans le cadre de mon travail, j'ai besoin de réaliser sous R une carte de la France
métropolitaine et d'y positionner les communes que je souhaite représenter par un
point rouge.
Je précise que je mes compétences en R sont assez basiques et que je suis totalement
débutant en cartographie. J'espère donc que vous saurez faire preuve d'indulgence
si je raconte des bêtises ou si des concepts qui vous semblent familiers et évidents
m'échappent totalement. Mais je vous promets de faire des efforts pour essayer de
suivre ! :)
Voici mon problème :
- J'ai récupéré une carte de France sur le site GADM, niveau départements, constituée
de 5 fichiers (gadm36_FRA_2.cpg, gadm36_FRA_2.dbf, gadm36_FRA_2.prj, gadm36_FRA_2.shp et
gadm36_FRA_2.shx).
- J'ai par ailleurs un fichier CSV contenant les codes INSEE des communes françaises
qui m'intéressent avec leurs latitudes et longitudes. Dans ce fichier pour exemple,
les latitudes et longitudes de Calais sont respectivement 50.95020728 et 1.875755661,
celles de Cherbourg sont 49.63341216 et -1.633901602.
Lorsque j'affiche ma carte avec les communes, ces dernières n'y sont pas
positionnées correctement : elles sont décalées vers le bas. Je suppose donc que la carte
que j'ai téléchargée et les données de mon fichier CSV n'utilisent pas le même
référentiel, mais j'ai beau chercher, je ne n'en sors pas. Je souhaiterais pouvoir
joindre les fichiers que j'utilise pour vous faciliter la tâche si vous souhaitez
m'aider, mais je ne trouve pas comment les joindre à mon message malheureusement.
En attendant, voici le code R que j'ai créé :
-----------------
Code :
library(sf)
library(dplyr)
library(readr)
library(tidyverse)
# Déclaration de l'opérateur "not in".
'%!in%' %
select(CC_2)
# Codes communes avec latitudes et longitudes en degrés décimaux.
# Communes retenues : Calais, Cherbourg, Paris, Saint-Martin-de-Ré, Niort, Nice et
Marseille.
df_communes %
ggplot() +
geom_sf(aes(fill = CC_2), show.legend = FALSE, fill = "white") +
geom_text(data = df_communes,
aes(x = longitude, y = latitude, label = "."), colour =
"red")
-----------------
Un grand merci d'avance si vous pouvez m'aider ! :)
Bonne fin de journée.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=344951#p344951
Pour y répondre : geolibre(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net