【发布时间】:2020-08-27 07:34:28
【问题描述】:
我想查找 2 个节点之间的街道名称。我做了一些研究,我认为使用 Networkx 是可能的。 按照这个问题的答案: OSMNx : get coordinates of nodes using OSM id
我可以看到,例如,找到一些节点的坐标,我只需要写 G.nodes[id]['x]。但是我尝试在这样的两条街道之间找到名称: (假设 G 是我的图)
G.nodes[id_src][id_dst]['name']
它返回这个错误:
KeyError: 667410900
我假设这个数字是节点的 ID。
如何获得街道名称?
【问题讨论】:
-
街道是模型中的边还是节点?我猜它们是边缘,那么你需要通过
G.edges[(id_src, id_dst)]["name"]访问它们 -
感谢您的回答,但它仍然有这个错误:ValueError: not enough values to unpack (expected 3, got 2)
-
我总是忘记 OSMNx 可以和
MultiGraph一起使用,所以试试G.edges[(id_src, id_dst, 0)]["name"] -
是的,就是这个。谢谢!
标签: python nodes networkx osmnx