2016-01-26 31 views
5

NetworkXを使用して2つのノード間に平行なエッジを追加しようとしていますが、以下のエラーで失敗します。私は間違って何をしていますか?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') 

エラー:

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' 

答えて

1

あなたのコードは正常に動作している、と私は、出力画像を添付。

enter image description here

+0

ご回答ありがとうございます。それは動作しません。それでも私には同じエラーが表示されます。実際にそのコードを試しましたか?それはあなたのために働くのですか? – TraderMoe

+0

はい私はそれを試して、それが動作している! –

+0

申し訳ありませんが私の間違いを私は間違って –