OSMnx边缘几何属性缺失

时间:2018-01-19 13:27:49

标签: python openstreetmap networkx

我使用OSMnx来提取道路形状。但是,我发现OSM中的某些方法似乎只是在OSMnx中以几何方式部分表示。

可以在overpass turbo上运行的可重现示例:

<union>
  <bbox-query s="43.604437753042106" w="1.4469172178876575" n="43.60670421020654" e="1.4497628267951939"/>
  <recurse type="up"/>
</union>
<print mode="meta"/>

使用OSMnx加载此图形的命令:

import osmnx as ox
G = ox.graph_from_bbox(43.60670421020654, 43.604437753042106, 1.4497628267951939, 1.4469172178876575, network_type='drive')
ox.plot_graph(G)

如果我们采用32021916的方式示例,则使用调试器检查G变量会显示G._pred包含表示该方式的2条边:

  • 从节点2271536804到其前任节点359203175:关联的边包含几何属性。
  • 从节点359203175到其前任节点359203168:关联的边缘不包含任何几何属性,为什么?

但是,绘制的图表已完成并显示此道路的部分。所以我的问题是:如何获得这条道路的完整几何属性?

1 个答案:

答案 0 :(得分:1)

我想我找到了plot_graph函数代码中的解决方案:github repo

如果未定义几何,则绘图函数在两个节点之间绘制一条直线。