2016-01-26 17 views
5

Ich versuche, zwischen zwei Knoten mit NetworkX parallele Kanten hinzuzufügen, aber es schlägt mit dem folgenden Fehler fehl. Was mache ich falsch?Wie zeichne parallele Kanten in Networkx/Graphviz

import networkx as nx 
import graphviz 

g1 = nx.MultiGraph() 

node1 = 'a' 
node2 = 'b' 

g1.add_edge(node1,node2,key='one') 
g1.add_edge(node1,node2,key='two') 

A = nx.to_agraph(g1) 
A.add_subgraph() 

A.draw('test2.png', prog='dot') 

Fehler:

Traceback (most recent call last): 
    File "test2.py", line 12, in <module> 
    A = nx.to_agraph(g1) 
    File "C:\python27\lib\site-packages\networkx-1.11rc1-py2.7.egg\networkx\drawing\nx_agraph.py", line 152, in to_agraph 
    A.add_edge(u,v,key=str(key),**str_edgedata) 
    File "C:\python27\lib\site-packages\pygraphviz\agraph.py", line 481, in add_edge 
    eh = gv.agedge(self.handle, uh, vh, key, _Action.find) 
KeyError: 'agedge: no key' 

Antwort

1

Ihr Code funktioniert gut, und ich angebracht, um das Ausgangsbild.

enter image description here

+0

Vielen Dank für Ihre Antwort Abdallah. Das funktioniert nicht. Es gibt mir immer noch den gleichen Fehler. Hast du diesen Code tatsächlich ausprobiert? Und funktioniert es für dich? – TraderMoe

+0

Ja ich habe es versucht und es funktioniert! –

+0

Sorry, mein Fehler, ich habe einen Fehler gemacht –