Lucrul cu sisteme de coordonate în GeoPandas

Lucrul cu date geospațiale în Python

Joris Van den Bossche

Open source software developer and teacher, GeoPandas maintainer

Informații CRS în GeoPandas

Atributul .crs al unui GeoDataFrame/GeoSeries:

import geopandas
gdf = geopandas.read_file("countries.shp")
print(gdf.crs)
{'init': 'epsg:4326'}
Lucrul cu date geospațiale în Python

Setarea manuală a unui CRS

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

Adăugați informații CRS în crs:

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

# Option 2
gdf.crs = {'proj': 'longlat', 'datum': 'WGS84', 'no_defs': True}
Lucrul cu date geospațiale în Python

Transformarea într-un alt CRS

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

Metoda to_crs():

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

# Option 2 gdf2 = gdf.to_crs(epsg=4326)
Lucrul cu date geospațiale în Python

De ce să convertim CRS-ul?

1) Surse cu un CRS diferit

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

df2 = df2.to_crs(df1.crs)
Lucrul cu date geospațiale în Python

De ce să convertim CRS-ul?

1) Surse cu un CRS diferit

2) Cartografiere (distorsiunea formei și distanțelor)

Lucrul cu date geospațiale în Python

De ce să convertim CRS-ul?

1) Surse cu un CRS diferit

2) Cartografiere (distorsiunea formei și distanțelor)

3) Calcule bazate pe distanță / suprafață

Lucrul cu date geospațiale în Python

Cum alegeți CRS-ul potrivit?

Sfaturi:

  • Utilizați o proiecție specifică zonei datelor
  • Majoritatea țărilor au un CRS standard

Site-uri utile:

Lucrul cu date geospațiale în Python

Rezumat

  • Pentru a converti CRS-ul: metoda to_crs()
  • Asigurați-vă că seturile de date au același CRS
  • La calculul distanțelor, suprafețelor etc. -> utilizați un CRS proiectat

Site-uri utile:

Lucrul cu date geospațiale în Python

Să exersăm!

Lucrul cu date geospațiale în Python

Preparing Video For Download...