Я пытаюсь сделать 100 Мультисервисный узел графа G в макете GraphViz в NetworkX питона, поэтому я сделал две попытки до сих пор:Рисование графика в макете GraphViz в питона с помощью nx.draw_graphviz дает ошибку
Trial 1nx.draw_graphviz функции следующего nx.draw_graphviz(G)
, но я получаю следующее сообщение об ошибке повторяется для всех узлов в графе:
Error: node 1, position [0.127506302389087, 0.3262608552621944], expected two doubles
Затем, пытаясь понять решение, я использовал пробные 2-получить pygraphviz график, но когда я пытаюсь рисовать nx.draw_graphviz(A)
я получаю следующую ошибку:
AttributeError: 'AGraph' object has no attribute 'number_of_selfloops'
nx.graphviz_layout но возвращает словарь позиций введенных пользователя узлов, и я не знаю, как использовать его нарисуйте графический макет.
Note Я импортировал модули graphviz, pygraphviz и pydot, но я не знаю, какие из них действительно нужны для этого, но он по-прежнему не работает.
Есть что-то не хватает, чтобы нарисовать график networkx в графическом виде?
Полный Трассировка ошибок для
Trial 1
Traceback (most recent call last):
File "main.py", line 102, in <module>
d.display_graph(sub_normal,NEUTRAL_RANGE)
File "/home/abdallah/stage/Reputation_system/display.py", line 33, in display_graph
nx.draw_graphviz(G)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pylab.py", line 982, in draw_graphviz
pos = nx.drawing.graphviz_layout(G, prog)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pydot.py", line 257, in graphviz_layout
return pydot_layout(G=G,prog=prog,root=root,**kwds)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pydot.py", line 277, in pydot_layout
D=P.create_dot(prog=prog)
File "/usr/lib/python2.7/dist-packages/pydot.py", line 1802, in <lambda>
lambda f=frmt, prog=self.prog : self.create(format=f, prog=prog))
File "/usr/lib/python2.7/dist-packages/pydot.py", line 2023, in create
status, stderr_output))
pydot.InvocationException: Program terminated with status: 1. stderr follows: Error: node 0, position [0.7145101895899024, 0.9016482786797262], expected two doubles
проба 2
Traceback (most recent call last):
File "main.py", line 102, in <module>
d.display_graph(sub_normal,NEUTRAL_RANGE)
File "/home/abdallah/stage/Reputation_system/display.py", line 33, in display_graph
nx.draw_graphviz(A)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pylab.py", line 982, in draw_graphviz
pos = nx.drawing.graphviz_layout(G, prog)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pydot.py", line 257, in graphviz_layout
return pydot_layout(G=G,prog=prog,root=root,**kwds)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pydot.py", line 273, in pydot_layout
P=to_pydot(G)
File "/usr/local/lib/python2.7/dist-packages/networkx-1.10-py2.7.egg/networkx/drawing/nx_pydot.py", line 192, in to_pydot
strict=N.number_of_selfloops()==0 and not N.is_multigraph()
AttributeError: 'AGraph' object has no attribute 'number_of_selfloops'
Какие версии питона и NetworkX? – Joel
Python 2.7.6, что касается Networkx Я полагаю, что это 1.9.1 (но я не уверен, потому что я не знаю, как его получить) –
'nx .__ version__' – Joel