为了账号安全,请及时绑定邮箱和手机立即绑定

OSMnx:检索多个城市的建筑物多边形

OSMnx:检索多个城市的建筑物多边形

POPMUISE 2023-06-27 18:10:48
我是osm新手。目前我正在尝试使用 python 中的 osmnx 包检索多个城市的建筑多边形。代码:place = "Kuala Lumpur, Malaysia"graph = ox.footprints.footprints_from_place(place, footprint_type='building')graph.head()效果很好。但是,如果我想获得另一个状态,它会返回错误。(如果我想在国家/地区级别检索它,结果也是相同的 - 在本例中 - place =“马来西亚”)place = "Selangor, Malaysia"graph = ox.footprints.footprints_from_place(place, footprint_type='building')graph.head()---------------------------------------------------------------------------ValueError                                Traceback (most recent call last)<ipython-input-20-9e3439b6fc4c> in <module>()      1 place = "Selangor, Malaysia"----> 2 graph = ox.footprints.footprints_from_place(place, footprint_type='building')      3       4 graph.head()5 frames/usr/local/lib/python3.6/dist-packages/shapely/geometry/multipolygon.py in geos_multipolygon_from_polygons(arg)    175     # no implicit flattening.    176     if isinstance(obs[0], MultiPolygon):--> 177         raise ValueError("Sequences of multi-polygons are not valid arguments")    178     179     exemplar = obs[0]ValueError: Sequences of multi-polygons are not valid arguments有人能帮我吗?谢谢
查看完整描述

1 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

看起来 OSMnx 的footprints模块没有正确处理或忽略复杂(并且可能无效?)的多多边形几何形状。请注意,我们正在努力用更强大、更健壮、更通用的模块来取代footprints和模块。同时,我相信您可以使用如下模块实现您的目标:poisgeometriespois


import osmnx as ox

ox.config(use_cache=True, log_console=True)

place = 'Selangor, Malaysia'

gdf = ox.pois_from_place(place, tags={'building': True})

gdf.shape  # (47516, 390)




查看完整回答
反对 回复 2023-06-27
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信