Pour commencer, après avoir ouvert un notebook Google Colab, il faut installer la bibliothèque géopandas. Un objet GEOPANDAS hérite des propriétés d’un DataFrame pandas mais propose des méthodes adaptées au traitement des données spatiales. (voir ici un exemple de l’utilisation de GEOPANDAS : https://linogaliana-teaching.netlify.app/geopandas/)
Pour télécharger GEOPANDAS, il faut saisir la ligne de commande suivante :
Pour plus de détails sur la bibliothèque GEOPANDAS, rendez-vous sur la page officielle : https://geopandas.org/en/stable/
Maintenant, vous pouvez charger les données dans votre disque dur virtuel sur Google Colab en allant sur la partie gauche de votre notebook :
Choisir le fichier “capacites.geoson” sur votre disque et cliquer sur “Ouvrir”
Le fichier apparaît maintenant sur votre disque dur virtuel sur Google Colab.
Importer les données
Avant d’importer les données, vous devez copier le chemin d’accès à votre fichier de données. Ceci vous permettra par la suite d’indiquer à geopandas où se trouvent vos données sur le disque virtuel :
Pour importer les données, vous devez saisir la syntaxe suivante :
La première ligne de code importe la bibliothèque geopandas en lui attribuant l’alias gpd.
La deuxième ligne de code crée une variable (un objet), appelé “data” dans lequel on vient stocker les informations lues dans le fichier “capacites.geojson”
Afficher les données
Pour afficher les données, il vous suffit de saisir le nom de votre variable “data” et de lancer l’exécution de la cellule :
Vous remarquerez que la dernière colonne du fichier, nommée “geometry”, contient des données de type “géographiques”. En effet, par rapport à un DataFrame standard, un objet GEOPANDAS comporte une colonne supplémentaire : GEOMETRY. Cette colonne stocke les coordonnées des objets géographiques (ou ensemble de coordonnées s’agissant de contours : multipolygon).
Pour s’assurer que les contours dont nous disposons sont conformes à ceux attendus, nous pouvons tout simplement utiliser la méthode PLOT() :
Afficher une carte incluant les contours
Maintenant que nous disposons de nos contours, nous pouvons créer une carte plus globale.
Pour cela, nous utiliserons la bibliothèque FOLIUM (https://python-visualization.github.io/folium/).
Nous allons tout d’abord installer la bibliothèque FOLIUM sur notre notebook Google Collab en utilisant la fonction “pip install”:
Nous allons maintenant dessiner la carte en créant un objet FOLIUM appelé carte :
Tout d’abord, nous importons la bibliothèque FOLIUM puis nous créons un objet nommé “CARTE”. Notre carte sera centrée sur la ville de Toulouse (Capitale de l’Occitanie 😉 ). Les coordonnées GPS de Toulouse sont les suivantes : 3° 36′ 15.3″ Nord, 1° 26′ 37.2″ Est. Elles peuvent tout simplement être trouvées sur Google en saisissant “Coordonnées GPS Toulouse”. En changeant les coordonnées indiquées dans “LOCATION”, vous pouvez centrer votre carte sur une autre ville.
Une fois l’objet CARTE créé, nous allons ajouter à cet objet les contours qui se trouvent dans la colonne DATA[‘GEOMETRY’].
Nous demandons ensuite l’affichage de la carte et vous découvrez le dessin de votre carte interactive 😉
————— Code to copy/paste on Google Colab———————-
import folium
carte = folium.Map(location=[43.6153,1.26372],zoom_star=7,tiles=”OpenStreetMap”)
folium.GeoJson(data[‘geometry’]).add_to(carte)
carte
————— End of code ———————-
En regardant la documentation de la bibliothèque FOLIUM, vous obtiendrez toutes les informations pour modifier le design de votre carte, pour ajouter des points ou pour modifier les couleurs des contours ou de l’intérieur de vos départements.
Quelques modifications de style
Nous pouvons modifier le fond de la carte en utilisant le style OPENSTREETMAP et préciser des propriétés pour le contour et le remplissage de la zone. Ainsi, en ajoutant la syntaxe STYLE_FUNCTION lors de l’ajout de nos données de GEOMETRY, nous obtenons la carte suivante :
Le DataFrame GEOPANDAS possédant les mêmes fonctionnalités qu’un DataFrame PANDAS, nous pouvons aussi sélectionner des lignes spécifiques dans notre jeu de données. Ici, nous lisons les données présentent dans la première ligne de notre DataFrame GEOPANDAS (data[‘geometry’][0]). Nous obtenons ici le département de l’Ariège :
Pour afficher plusieurs lignes en utilisant des couleurs différentes, il nous suffit de créer une variable de propriété par ligne dont nous voulons modifier l’affichage :
N’hésitez pas à lire les documentations des bibliothèques présentées ici.
Amusez-vous