gis计算点和多边形/边界之间的距离

Geo*_*ler 4 python gis distance shapely geopandas

我想使用 python / 计算一个点和一个国家边界之间的距离shapely。它应该可以正常工作 point.distance(poly) 例如在这里演示Find Coordinate of Closest Point on Polygon Shapely但是使用geopandas我面临的问题是: 'GeoSeries' object has no attribute '_geom'

我对数据的处理有什么问题?我的边界数据集来自http://www.gadm.org/

'GeoSeries' 对象没有属性 '_geom'

egu*_*aio 5

根据geopandas文档,GeoSeries 是一个几何向量(在您的情况下,0 (POLYGON...告诉您只有一个对象,但它仍然是一个向量)。应该有办法获得第一个几何元素。GeoSeries 类实现了该__getitem__方法,因此austriaBorders.geometry[0]应该为您提供所需的几何图形。因此,尝试使用point.distance(austriaBorders.geometry[0]).

如果您只需要到一个点的距离,GeoSeries则该distance方法已实现,但它将返回一个向量,其中包含到它包含的每个几何体的距离(根据文档)。

  • 确实 [0] 是 shapely.geometry.multipolygon.MultiPolygon (2认同)