Ajout de carte choroplèthe
La bibliothèque Folium, construite sur Leaflet.js, offre la possibilité de créer des cartes interactives puissantes. Parmi ses fonctionnalités les plus informatives figure la carte choroplèthe, qui permet de représenter des données statistiques à l’aide de zones colorées selon leur intensité ou leur valeur.
Une carte choroplèthe (ou choropleth map) est particulièrement utile pour visualiser la distribution spatiale de variables telles que la population, le revenu moyen, le taux de chômage, ou tout autre indicateur lié à un territoire. Elle repose sur une couche géographique au format GeoJSON qui délimite les zones (régions, départements, pays, etc.) et une source de données associée qui attribue une valeur à chaque zone.
Grâce à Folium, il est possible de lier ces données à la géographie via des identifiants communs, et d’ajuster dynamiquement la palette de couleurs pour représenter visuellement l’intensité des valeurs. Cela permet de produire des cartes compréhensibles, esthétiques et très utiles pour l’analyse spatiale.
Fonctions :
-
folium.Choropleth()
La fonction folium.Choropleth() est utilisée pour créer une carte choroplèthe (ou carte de densité) dans une carte interactive Folium. Elle permet de visualiser des données géospatiales sous forme de couleurs variant en fonction des valeurs associées à chaque zone géographique (par exemple, des régions, des pays, ou des départements).
Importation :
import foliumAttributs :
Paramètre Type Description Valeur par défaut geo_datadict Données géospatiales sous forme de GeoJSON (par exemple, les frontières des pays ou des départements). Nonedatapandas.Series Série contenant les valeurs numériques à visualiser sur la carte (par exemple, population, densité, etc.). Nonecolumnslist Liste des noms de colonnes du dataframe pour les valeurs associées aux zones géographiques. Nonekey_onstr Clé utilisée pour associer les valeurs aux zones géographiques (par exemple, 'feature.id' ou 'properties.name'). Nonefill_colorstr Couleur de remplissage utilisée pour la choroplèthe (par exemple, 'YlGn', 'BuPu'). 'YlGnBu'fill_opacityfloat Opacité de la couleur de remplissage (de 0 à 1). 0.6line_opacityfloat Opacité des bordures des zones géographiques (de 0 à 1). 0.2Exemple de code :
import folium import pandas as pd # Exemple de données géospatiales (GeoJSON) geo_data = 'https://raw.githubusercontent.com/codeforamerica/click_that_hood/master/public/data/france-regions.geojson' # Exemple de données numériques à associer aux régions data = pd.Series({ 'Île-de-France': 12, 'Provence-Alpes-Côte d\'Azur': 7, 'Auvergne-Rhône-Alpes': 8, 'Normandie': 6, 'Bretagne': 5, # Ajoutez plus de régions et de valeurs ici }) # Création de la carte centrée sur la France m = folium.Map(location=[46.603354, 1.888334], zoom_start=6) # Création de la carte choroplèthe choropleth = folium.Choropleth( geo_data=geo_data, data=data, columns=['Région', 'Valeur'], # Assurez-vous que vos données sont structurées de manière appropriée key_on='feature.properties.nom', # Associe les valeurs aux régions géographiques fill_color='YlGnBu', fill_opacity=0.6, line_opacity=0.2, legend_name='Valeur des régions' ).add_to(m) # Affichage de la carte mExplication du code :
-
Données géospatiales (GeoJSON) : Les données géospatiales sont chargées à partir d'un fichier GeoJSON contenant les frontières des régions françaises.
-
Données numériques : Une série de valeurs numériques (ici des chiffres fictifs représentant des données par région) est associée à chaque zone géographique. Ces valeurs seront utilisées pour colorier la carte.
-
Création de la carte choroplèthe : La fonction
folium.Choropleth()est utilisée pour appliquer les couleurs sur la carte en fonction des valeurs associées à chaque région. Le paramètrekey_onpermet de lier les données géographiques aux valeurs dans le jeu de données, tandis quefill_colordétermine les couleurs utilisées sur la carte. -
Affichage de la carte : La carte interactive est affichée.
Remarque importante :
-
Assurez-vous que la clé utilisée dans
key_oncorrespond bien aux propriétés des objets géospatiaux dans votre fichier GeoJSON. -
Les données doivent être fournies sous forme de série Pandas où l'index correspond à la clé utilisée dans le fichier GeoJSON.
-
Vous pouvez personnaliser davantage la carte choroplèthe en jouant avec les paramètres comme
fill_coloretline_opacitypour affiner l'apparence.
-