Il existe des listes de données en ligne. Elles sont plutôt exhaustives pour les données mondiales, c’est moins vrai pour les données à l’échelle des pays :
Pour obtenir des fonds de cartes du territoire français, on se tournera vers l’IGN. Tout ce que vous voyez sur une carte topographique IGN, vous pouvez le récupérer. L’IGN organise ses données par base, vous trouverez ci-dessous une description des bases les plus courrament utilisées :
Une liste des bases plus détaillée est disponible sur le site de l’IGN. Les métadonnées sont disponibles sur la page web dédiée.
Pou récupérer ces données, vous pouvez vous rendre sur le site de l’IGN et les télécharger. Il est également possible de les télécharger directement sur R avec le package happign. En utilisant ce package vous vous assurez de ne télécharger que les données dont vous avez besoin1.
1 En effet, sur le site de l’IGN vous ne pouvez que télécharger les bases par départements sans possibilité de choisir les données que vous souhaitez en particulier ; pas très écolo cette affaire.
Mettons que l’on souhaite récupérer les bâtiments de Guissény (29) ainsi que l’emprise administrative de la commune. Si l’on a aucune idée d’où l’on peut trouver les bâtiments, on peut chercher dans les métadonnées des couches vectorielles.
library(happign)# Récupération des métadonnéesmeta <-get_layers_metadata(data_type ="wfs")# Récupération du nom des couchesname <- meta$Name# On cherche les couches qui contiennent la chaîne de caractère "bati"com_name <- name[grep(x = name, "commune")]head(com_name)
On obtient toute les données disponibles. Nous utiliserons les données de la BDTOPO BDTOPO_V3:batiment. L’étape suivant consiste à filtrer la couche pour ne retenir que les informations qui nous intéresse. On peut filtrer par attributs ou par opération spatiale. Le filtre sera réalisé sur les serveurs de l’IGN et vous récupérez le résultat.
Pour filtrer par attribut, on utilise un filtre ECQL. Il s’agit d’un langage de requête très proche du SQL (ce qui vous utilisez sous QGIS pour filtrer vos données). Pour savoir comment filtrer vos données, il vous faut d’abord savoir quels sont les attributs de votre couche. Pour cela, on utilise la fonction get_wfs_attributes().
Pour des fond de cartes à petites échelles, se tournera vers Natural Earth. Ce jeu de données enregistre les données élémentaires pour créer des fonds de cartes : frontières des pays, routes, cours d’eau, toponymie, zones urbaines, lacs, etc.
Le package rnaturalearth permet de récupérer directement ces données sous R. Pour une carte du continent européen :
europe <- rnaturalearth::ne_countries(continent ="Europe", scale ="small")ggplot() +geom_sf(data = europe) +theme_minimal()