NetworkX 图中的最短路径与最短路径节点之间的边长不同
Shortest Path in a NetworkX graph is not same as length of edge between shortest path nodes
我有一个带有两条边的 NetworkX 图,代码如下:
import networkx as nx
GH = nx.Graph()
GH.add_edge(0, 1, len=3)
GH.add_edge(0, 2, len=7.5)
GH.add_edge(1,2,len=2)
我想找到节点 0 和节点 1 之间的最短路径长度。我希望它是 3,但它会变成 1。用于此的代码是:
nx.shortest_path_length(GH,0,1)
我知道我在第一段代码中设置了一个边缘属性 'len',因此它可能不会改变边缘长度。但是有什么方法可以达到我期望的结果吗?
添加权重属性
nx.shortest_path_length(GH,0,2, weight='len')
获得预期结果。
我有一个带有两条边的 NetworkX 图,代码如下:
import networkx as nx
GH = nx.Graph()
GH.add_edge(0, 1, len=3)
GH.add_edge(0, 2, len=7.5)
GH.add_edge(1,2,len=2)
我想找到节点 0 和节点 1 之间的最短路径长度。我希望它是 3,但它会变成 1。用于此的代码是:
nx.shortest_path_length(GH,0,1)
我知道我在第一段代码中设置了一个边缘属性 'len',因此它可能不会改变边缘长度。但是有什么方法可以达到我期望的结果吗?
添加权重属性
nx.shortest_path_length(GH,0,2, weight='len')
获得预期结果。