问题:python 通过cartopy.io.shapereader读取shp文件,出现Incomplete shapefile definition in 'c:\aaa.dbf'

ditubianjie = ccrs.PlateCarree()  # 定义投影转换
fname = 'aaa.dbf'
features = shpreader.Reader(file).geometries()
# 绘制地图
ax.add_geometries(features , ditubianjie, facecolor='none', edgecolor='black', zorder=2)

解决:将shp文件(.shp,.dbf,.shx等)放在同一目录就可以了。

原因:扒拉开源代码就是这么写的,如下:

if reader.shp is None or reader.shx is None or reader.dbf is None:
   raise ValueError("Incomplete shapefile definition "
                    "in '%s'." % filename)

cartopy.io.shapereader — cartopy 0.12.0 documentation (scitools.org.uk)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐