Todos, eu uso o arquivo de forma generalizada ESRI World Countries, que está disponível aqui usando GeoPandas
shp_file =gpd.read_file('World_Countries/World_Countries_Generalized.shp')
print(shp_file.crs)
O CRS que obtive é EPSG:3857
, mas depois de adicionar o CRS ao gpd.read_file como o seguinte
shp_file1 =gpd.read_file('../../Downloads/World_Countries/World_Countries_Generalized.shp',crs='EPSG:3857')
Recebi o seguinte erro
/opt/anaconda3/envs/geo_env/lib/python3.12/site-packages/pyogrio/raw.py:198: RuntimeWarning: driver ESRI Shapefile does not support open option CRS return ogr_read(
Você sabe por que recebo esse erro e isso significa que o arquivo não foi lido corretamente?
Obrigado
Desde o geopandas 1.0, outra biblioteca subjacente mais rápida é usada por padrão para ler arquivos no geopandas: pyogrio . Mais informações podem ser encontradas aqui: fiona vs pyogrio . Quando essa nova biblioteca é usada, o
crs
parâmetro não é suportado.A solução mais fácil para esse caso específico é simplesmente remover o
crs='EPSG:3857'
parâmetro, pois ele é inútil de qualquer maneira, pois o crs já foi lido corretamente?Se você quiser ler um shapefile que não tenha um arquivo .prj, ou que tenha um arquivo errado, você pode, por exemplo, usar a função set_crs para
GeoDataFrame
definir ou anular ocrs
após ler o arquivo: