2015-06-29 50 views
1

我使用这个python脚本下载OSM的数据并将其转换为一个无向networkx图:OSM来向图(上python-的igraph/networkx)

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

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

首先,你可以确认在OSM原始XML数据表示herehere,在程ND-条目的顺序是方向哪些事项?

其次,你将如何建议实现从osm原始数据生成有向图,将上面的要点代码片段作为模板?

非常感谢!

+0

你拿出的东西的工作,你可以分享? – marcus

+0

是的,看到我的回答如下 – sal

回答

5

节点的顺序只有在方法被加上oneway = YES单向= -1事项。否则,这种方式是双向的。这当然只适用于车辆。唯一的例外是highway=motorway这意味着oneway =是

您可能也有兴趣routing wiki页面。它列出了两个用python实现的路由器,以及其他许多路由器。

1

OK,我更新了我的脚本,以便使方向性:

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

+0

您的脚本将有效地生成一个200节点矩阵中每个节点的基于时间的原点 - 目标成本矩阵? – dassouki

+0

嗨@dassouki可以指定更多一点吗?对于osm数据集,200个节点非常小。 – sal