Travailler avec les systèmes de coordonnées dans GeoPandas

Travailler avec des données géospatiales en Python

Joris Van den Bossche

Open source software developer and teacher, GeoPandas maintainer

Renseignements CRS dans GeoPandas

L'attribut .crs d'un GeoDataFrame/GeoSeries :

import geopandas
gdf = geopandas.read_file("countries.shp")
print(gdf.crs)
{'init': 'epsg:4326'}
Travailler avec des données géospatiales en Python

Définir un CRS manuellement

gdf_noCRS = geopandas.read_file("countries_noCRS.shp")
print(gdf_noCRS.crs)
{}

Ajouter les renseignements CRS à crs :

# Option 1
gdf.crs = {'init': 'epsg:4326'}

# Option 2
gdf.crs = {'proj': 'longlat', 'datum': 'WGS84', 'no_defs': True}
Travailler avec des données géospatiales en Python

Transformer vers un autre CRS

import geopandas
gdf = geopandas.read_file("countries_web_mercator.shp")
print(gdf.crs)
{'init': 'epsg:3857', 'no_defs': True}

La méthode to_crs() :

# Option 1
gdf2 = gdf.to_crs({'proj': 'longlat', 'datum': 'WGS84', 'no_defs': True})

# Option 2 gdf2 = gdf.to_crs(epsg=4326)
Travailler avec des données géospatiales en Python

Pourquoi convertir le CRS ?

1) Sources avec un CRS différent

df1 = geopandas.read_file(...)
df2 = geopandas.read_file(...)

df2 = df2.to_crs(df1.crs)
Travailler avec des données géospatiales en Python

Pourquoi convertir le CRS ?

1) Sources avec un CRS différent

2) Cartographie (distorsion des formes et des distances)

Travailler avec des données géospatiales en Python

Pourquoi convertir le CRS ?

1) Sources avec un CRS différent

2) Cartographie (distorsion des formes et des distances)

3) Calculs de distance/surface

Travailler avec des données géospatiales en Python

Comment choisir le CRS à utiliser ?

Conseils :

  • Utilisez une projection propre à la zone de vos données
  • La plupart des pays ont un CRS normalisé

Sites utiles :

Travailler avec des données géospatiales en Python

Résumé

  • Pour convertir vers un autre CRS : la méthode to_crs()
  • Assurez-vous que les jeux de données ont le même CRS
  • Pour calculer des distances/surfaces, utilisez un CRS projeté

Sites utiles :

Travailler avec des données géospatiales en Python

Passons à la pratique !

Travailler avec des données géospatiales en Python

Preparing Video For Download...