Werken met coördinatensystemen in GeoPandas

Werken met georuimtelijke data in Python

Joris Van den Bossche

Open source software developer and teacher, GeoPandas maintainer

CRS-informatie in GeoPandas

Het attribuut .crs van een GeoDataFrame/GeoSeries:

import geopandas
gdf = geopandas.read_file("countries.shp")
print(gdf.crs)
{'init': 'epsg:4326'}
Werken met georuimtelijke data in Python

Handmatig een CRS instellen

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

CRS-informatie toevoegen aan crs:

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

# Optie 2
gdf.crs = {'proj': 'longlat', 'datum': 'WGS84', 'no_defs': True}
Werken met georuimtelijke data in Python

Transformeren naar een andere CRS

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

De methode to_crs():

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

# Optie 2 gdf2 = gdf.to_crs(epsg=4326)
Werken met georuimtelijke data in Python

Waarom de CRS omzetten?

1) Bronnen met een andere CRS

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

df2 = df2.to_crs(df1.crs)
Werken met georuimtelijke data in Python

Waarom de CRS omzetten?

1) Bronnen met een andere CRS

2) Kaartprojectie (vervorming van vorm en afstand)

Werken met georuimtelijke data in Python

Waarom de CRS omzetten?

1) Bronnen met een andere CRS

2) Kaartprojectie (vervorming van vorm en afstand)

3) Afstands-/oppervlakteberekeningen

Werken met georuimtelijke data in Python

Hoe kies je een CRS?

Tips:

  • Gebruik een projectie die past bij je studiegebied
  • De meeste landen hebben een standaard-CRS

Handige sites:

Werken met georuimtelijke data in Python

Samenvatting

  • Converteren naar een andere CRS: de to_crs()-methode
  • Zorg dat datasets dezelfde CRS hebben
  • Voor afstand, oppervlakte, ... -> gebruik een geprojecteerde CRS

Handige sites:

Werken met georuimtelijke data in Python

Laten we oefenen!

Werken met georuimtelijke data in Python

Preparing Video For Download...