AttributeError: l'objet 'module' n'a pas d'attribut 'graphviz_layout' avec networkx 1.11
Je suis en train de dessiner des DAGs à l'aide de networkx 1.11 mais je suis confronté à quelques erreurs, voici le test:
import networkx as nx
print nx.__version__
G = nx.DiGraph()
G.add_node(1,level=1)
G.add_node(2,level=2)
G.add_node(3,level=2)
G.add_node(4,level=3)
G.add_edge(1,2)
G.add_edge(1,3)
G.add_edge(2,4)
import pylab as plt
nx.draw_graphviz(G, node_size=1600, cmap=plt.cm.Blues,
node_color=range(len(G)),
prog='dot')
plt.show()
Et voici le traceback:
Traceback (most recent call last):
File "D:\sources\personal\python\framework\stackoverflow\test_dfs.py", line 69, in <module>
prog='dot')
File "d:\virtual_envs\py2711\lib\site-packages\networkx\drawing\nx_pylab.py", line 984, in draw_graphviz
pos = nx.drawing.graphviz_layout(G, prog)
AttributeError: 'module' object has no attribute 'graphviz_layout'
Je suis à l'aide de python 2.7.11 x64, networkx 1.11 et j'ai installé graphviz-2.38 avoir dot
disponible en CHEMIN. Ce qui me manque?
Une fois que cela fonctionne, comment ai-je pu dessiner le graphe dont les nœuds qui:
- Blanc couleur d'arrière-plan
- Ont des étiquettes à l'intérieur de
- Ont réalisé des flèches
- Sont disposés bien que ce soit automatiquement ou manuellement
Quelque chose de similaire à l'image ci-dessous
Comme vous pouvez le voir dans cette image, les nœuds sont alignés vraiment bien
source d'informationauteur BPL | 2016-09-09
Vous devez vous connecter pour publier un commentaire.
Le package de mise en page a changé dans les versions ultérieures de networkx. Vous pouvez importer les graphivz_layout fonction explicitement.