OSM到DIRECTED Graph(python-igraph / networkx)

时间:2015-06-29 09:46:31

标签: python xml graph openstreetmap networkx

我正在使用此python脚本下载OSM数据并将其转换为无向网络x图:

https://gist.github.com/rajanski/ccf65d4f5106c2cdc70e

然而,在理想情况下,我想从中生成一个有向图,以便反映osm街道网络的方向性。

首先,您能否确认OSM原始xml数据中所述herehere,方式中nd条目的顺序对方向有意义吗?

其次,您如何建议从osm原始数据生成有向图的生成,将上述gist代码段作为模板?

非常感谢!

2 个答案:

答案 0 :(得分:5)

只有使用 oneway = yes oneway = -1 标记方式时,节点的顺序才有意义。否则方式是双向的。这当然仅适用于车辆。唯一的例外是 highway=motorway ,暗示 oneway = yes

您可能也对routing维基页面感兴趣。它列出了在python中实现的两个路由器,以及许多其他路由器。

答案 1 :(得分:1)

好的,我更新了我的脚本以启用方向性:

https://gist.github.com/rajanski/ccf65d4f5106c2cdc70e