Tôi đang cố gắng để vẽ một số DAG sử dụng networkx 1.11 nhưng tôi phải đối mặt với một số lỗi, đây là thử nghiệm:AttributeError: đối tượng 'module' không có thuộc tính 'graphviz_layout' với networkx 1.11
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()
Và đây là 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'
tôi đang sử dụng python 2.7.11 x64, networkx 1.11 và tôi đã cài đặt graphviz-2.38 có dot
sẵn trong PATH. Tôi đang thiếu gì?
Khi nó hoạt động, làm thế nào tôi có thể vẽ đồ thị với các nút đó:
- màu Sử dụng nền trắng
- Có nhãn bên
- mũi tên đã chỉ đạo
- được bố trí độc đáo hoặc là tự động hoặc bằng tay
Tương tự như hình ảnh dưới đây
Như bạn có thể thấy trong hình ảnh đó, các nút được liên kết thực sự độc đáo
Sử dụng một trong hai 'nx.graphviz_layout' hoặc 'nx.drawing.nx_agraph.graphviz_layout'. –
@ValentinLorentz Khi thử 'nx.graphviz_layout', tôi sẽ nhận được đối tượng' AttributeError: 'module' không có thuộc tính 'graphviz_layout'' nhưng sử dụng 'nx.drawing.nx_agraph.graphviz_layout' kinda hoạt động. Mặc dù không phải 'nx.graphviz_layout (G, prog = 'chấm') hay nx.drawing.nx_agraph.graphviz_layout (G)' đều hiển thị bất kỳ thứ gì. Nếu bạn có thể cung cấp một ví dụ mcve này tôi có thể xác nhận câu trả lời của bạn, cảm ơn! – BPL
Làm thế nào để bạn có được đồ thị để có chủ đề đó, với các nhãn trong các nút? – Arya