全部,我使用 ESRI 世界国家通用形状文件,该文件可在此处 使用 GeoPandas获取
shp_file =gpd.read_file('World_Countries/World_Countries_Generalized.shp')
print(shp_file.crs)
我得到的 CRS 是EPSG:3857
,但是一旦我将 CRS 添加到 gpd.read_file,如下所示
shp_file1 =gpd.read_file('../../Downloads/World_Countries/World_Countries_Generalized.shp',crs='EPSG:3857')
我收到以下错误
/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(
你知道我为什么会收到这个错误吗?这是否意味着文件读取不正确?
谢谢
自 geopandas 1.0 起,默认使用另一个更快的底层库来读取 geopandas 中的文件:pyogrio。更多信息可以在这里找到:fiona vs pyogrio。当使用这个新库时,
crs
不支持该参数。对于这种特定情况,最简单的解决方案就是删除该
crs='EPSG:3857'
参数,因为 crs 已经被正确读取了,所以它是无用的?如果您想要读取没有.prj 文件的shapefile,或者是错误的shapefile,则可以在读取文件后使用set_crs函数
GeoDataFrame
来设置或否决:crs