问题描述
我不完全确定这里有什么问题?我仍然是一个不熟悉 geo 工作的菜鸟。
代码如下:
geod = Geod(ellps='IAU76')
poly_wkt = gdf['polygon_wkt']
polygon_latlon = shapely.wkt.loads(poly_wkt)
这是结果:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-81-1768dce562b2> in <module>
1 geod = Geod(ellps='IAU76')
2 poly_wkt = gdf['polygon_wkt']
----> 3 polygon_latlon = shapely.wkt.loads(poly_wkt)
/opt/anaconda3/lib/python3.7/site-packages/shapely/wkt.py in loads(data)
8 def loads(data):
9 """Load a geometry from a WKT string."""
---> 10 return geos.WKTReader(geos.lgeos).read(data)
11
12 def load(fp):
/opt/anaconda3/lib/python3.7/site-packages/shapely/geos.py in read(self,text)
248 """Returns geometry from WKT"""
249 if sys.version_info[0] >= 3:
--> 250 text = text.encode('ascii')
251 geom = self._lgeos.GEOSWKTReader_read(self._reader,c_char_p(text))
252 if not geom:
AttributeError: 'polygon' object has no attribute 'encode'
请注意,我只是在测试,所以 gdf
仅包含数据框中的一行。下面是 gdf['polygon_wkt']
'polyGON ((-79.4933048853656 43.7743030426707,-79.49308933771617 43.77435219959612,-79.49303123292202 43.77422072795962,-79.49324803281571 43.77417227872202,-79.4933048853656 43.7743030426707))'
我已经导入了 Geod
和 shapely
和 geopandas
并且已经是最新版本,但不知道还能做什么。基本上,我的最终目标是找到该多边形所包围的区域。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)