Prise en main de l’analyse spatiale
Les workflows spatiaux reposent sur Python, avec GeoPandas pour les données vectorielles et Matplotlib pour le rendu. Cette page vous mène d’un environnement vierge à une première carte de limites administratives.
Créer l’environnement
Les notebooks ont été rédigés avec Python 3.12. Créez un environnement isolé avec la pile géospatiale :
conda create -n geo-spatial -c conda-forge python=3.12 \
geopandas matplotlib pyreadstat xlrd openpyxl pandas numpy
conda activate geo-spatialgeopandas embarque des bibliothèques natives (GDAL, PROJ, GEOS). L’installation depuis
conda-forge est la voie fiable — pip install geopandas échoue souvent à résoudre le
GDAL du système.
Récupérer les sources
Les notebooks sont versionnés dans le dépôt ; leurs couches d’entrée sont hébergées sur le jeu
de données Hugging Face nhic/rwanda-spatial,
et non dans git. Téléchargez-les et décompressez-les selon l’arborescence attendue par les
notebooks :
pip install -U huggingface_hub
cd analysis/spatial-analysis
hf download nhic/rwanda-spatial --repo-type dataset --local-dir hf
unzip -o hf/rwanda-admin-boundaries.zip -d rwanda
unzip -o hf/cells-admin4.zip -d Cell_Shapefile
unzip -o hf/villages-admin5.zip -d Village_shapefile
unzip -o hf/wetlands.zip -d Wetland
unzip -o hf/environmental-layers.zip -d shapefiles
cp hf/climate-data.xls "Climate data.xls"Charger un shapefile de limites administratives
Chaque niveau administratif est un shapefile unique. Sa lecture renvoie un GeoDataFrame :
import geopandas as gpd
sectors = gpd.read_file("rwanda/rwa_adm3_2006_NISR_WGS1984_20181002.shp")
print(sectors.crs) # EPSG:4326 (WGS84)
print(len(sectors)) # ~416 sectorsL’afficher
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(9, 8))
sectors.boundary.plot(ax=ax, linewidth=0.3)
ax.set_axis_off()
plt.show()Cette commande affiche les géométries des secteurs — la couche de base sur laquelle repose chaque carte choroplèthe :

Emplacement des fichiers
| Chemin | Contenu |
|---|---|
analysis/spatial-analysis/*.ipynb | Les notebooks Climate_maps et Bar-Plots |
analysis/spatial-analysis/rwanda/ | Limites administratives NISR (admin1–admin4) |
analysis/spatial-analysis/Village_shapefile/ | Limites des villages (admin5) |
analysis/spatial-analysis/shapefiles/ | Couches de contexte : eau, zones humides et occupation du sol |
analysis/spatial-analysis/Climate data.xls | Variables climatiques ERA5-Land par établissement de santé |
Pour régénérer les images de cartes, lancez le générateur — il exécute les deux notebooks et
écrit les PNG dans public/analytics/spatial-analysis/ (ignoré par git) — puis publiez-les
sur Hugging Face :
python analysis/spatial-analysis/generate_figures.py
bash scripts/upload-spatial-to-hf.shLe build du site reste exclusivement Node — Python n’est nécessaire que pour régénérer les figures, jamais pour servir la documentation.