正如我在标题中提到的,我需要找到节点之间的角度。我有一个带有路由节点ID的节点列表。我曾考虑过使用“ x”和“ y”坐标进行此操作,但我没有得出任何结论。另外,有人告诉我有关使用“轴承”的信息,但我又真的不知道如何使用它,因此无法得到正确的结果。
((我正在使用Networkx和OSMnx)
成为id_src和id_dst两个连续节点的ID:
G.edges[(id_src, id_dst, 0)]['bearing']
导入OSMnx
import osmnx as ox
导入墨尔本的图表
address_name='Melbourne'
G=ox.graph_from_address(address_name, distance=50)
从图中创建nodes
和edges
地理数据框
nodes, edges = ox.graph_to_gdfs(G, nodes=True, edges=True)
计算边缘轴承并从中制成一个熊猫系列
import pandas as pd
G = ox.add_edge_bearings(G)
bearings = pd.Series([data['bearing'] for u, v, k, data in G.edges(keys=True, data=True)], name='bearing')
将系列与edges
地理数据框连接在一起,以使边缘方位角在同一edges
地理法拉美中
edges = pd.concat([edges, bearings], axis=1)