Ändern der Kantenattribute in Networkx Multigraph

8

In einem Multigraph fügt jeder Aufruf von * add_edge (a, b, Gewichtung = 1) * eine neue Kante zwischen den Knoten a und b hinzu. Wenn Sie das Diagramm erstellen, können Sie dieses Gewicht ändern, wenn a und b erneut gefunden werden. Im Moment überprüfe ich, ob (a, b) oder (b, a) verbunden sind, dann muss die Kante gelöscht werden, und fügt eine neue hinzu. Es scheint mir, dass ich einfach in der Lage sein sollte, das Gewicht zu aktualisieren.

Hinweis: Ich brauche Multigraphen, weil ich verschiedene Arten von Kanten zwischen Knoten verwende (differenziert mit Schlüssel )

    
Vladtn 27.02.2012, 17:38
quelle

1 Antwort

13

Die Multigraph.add_edge -Dokumentation weist darauf hin, dass Sie das Argument key verwenden sollten um Kanten in einem Multigraph eindeutig zu identifizieren. Hier ist ein Beispiel:

%Vor%

Um nun die von xyz getastete Kante zu aktualisieren, übergeben Sie diesen Parameter einfach erneut:

%Vor%

Um den vorherigen Wert zu lesen, können Sie get_edge_data so:

%Vor%     
jterrace 27.02.2012, 17:53
quelle

Tags und Links