Ich benutze Code von dieser Frage: networkx - change color/width according to edge attributes - inconsistent result, weil es fast meine Frage beantwortet, aber ich arbeite mit einem Multigraph, weshalb die Antwort auf diese Frage mir nicht hilft.Access-Attribute eines Multigraphen in NetworkX
Ich muss ein Diagramm mit Linienstärken basierend auf den Gewichten zeichnen, aber das Diagramm wird falsch gezeichnet. Ich bin sicher, das Problem liegt an der Reihenfolge der Kanten. Hier ist mein Code:
Ich habe einen Multigraphen, die aus Kanten gefertigt, die wie folgt aussehen:
edgies = [(1,2, {'color': 'r'}),(2,3,{'color': 'b'}),(3,4,{'color':'g'})]
G = nx.MultiGraph()
G.add_edges_from(edgies, color = 'color')
pos = nx.circular_layout(G)
edges = G.edges()
colors = [G[u][v]['color'] for u,v in edges]
nx.draw(G, pos, edges=edges, edge_color=colors)
plt.show()
Der Fehler I ist wie folgt:
colors = [G[u][v]['color'] for u,v in edges]
KeyError: 'color'
Dieser Code funktioniert, wenn Ich benutze nur ein Diagramm, gibt aber den Fehler bei der Arbeit mit einem Multigraph. Bitte lassen Sie mich wissen, wenn Sie weitere Informationen benötigen. Vielen Dank.
DANKE !!!!! –