Я хочу посмотреть, какой край был взят по кратчайшему пути, чтобы я знал, прошел ли он через синий провод или красный провод.Ниже приведен пример того, что я реализовал в более широком масштабе.Я знаю, что он будет проходить через «красный» провод здесь, но я хочу видеть его, когда я делаю nx.shortest_path.
В любом случае, чтобы увидеть это?Удар это мой код
import networkx as nx
import matplotlib.pyplot as plt
G=nx.MultiGraph()
G.add_node("A")
G.add_node("B")
G.add_edge("A","B",weight=10,wire='Red')
G.add_edge("A","B",weight=12,wire='Blue')
G.add_edge("C","B",weight=3)
pos = nx.spring_layout(G)
nx.draw(G, pos)
plt.show()
nx.shortest_path(G,'A','C')
В идеале я хочу, чтобы это масштабировалось.Прямо сейчас у меня есть реализация, которая сравнивает взвешенные графы с одним и тем же базовым графом, но все узлы имеют только одно ребро между ними.Я поменяю вес на одном ребре, а затем вывожу все пути, которые изменились между исходным и новым графиками.
Я хочу иметь возможность добавлять несколько ребер между узлами, изменять вес и видеть,из узла B-> C потребовался синий или красный провод.