use*_*224 8 python draw networkx
我在python中使用networkx绘制有向图.然而,我发现边缘的箭头从一端而不是尖箭头是厚的.我想将粗边更改为尖箭头.这是我的代码,实际输出和所需的输出:
import networkx as nx
import matplotlib.pyplot as plt
G=nx.DiGraph()
item = [1,2]
G.add_edge(*item) #color = item[-1], weight = 2)
pos = nx.circular_layout(G)
nx.draw(G, pos, with_labels = True, edge_color = 'b')
plt.show()
Run Code Online (Sandbox Code Playgroud)
任何建议都会有帮助吗?
小智 9
这可能是一个较晚的答案,但在新版本 networkx 2.1 中,您可以使用arrowstyle和arrowsize参数设置箭头类型。
import networkx as nx
import matplotlib.pyplot as plt
G=nx.DiGraph()
item = [1,2]
G.add_edge(*item) #color = item[-1], weight = 2)
pos = nx.circular_layout(G)
nx.draw(G, pos, with_labels = True, edge_color = 'b', arrowsize=20, arrowstyle='fancy')
plt.show()
Run Code Online (Sandbox Code Playgroud)
详细可以看文档:https : //networkx.github.io/documentation/stable/reference/generated/networkx.drawing.nx_pylab.draw_networkx_edges.html#networkx.drawing.nx_pylab.draw_networkx_edges
目前,nx.draw 无法做到这一点。根据https://github.com/networkx/networkx/blob/master/networkx/drawing/nx_pylab.py#L584,它还没有实现。
但是,您可以尝试使用 graphviz 来绘制图表。Networkx 有一个接口可以轻松地将图形转换为 graphviz 对象。请参阅https://networkx.github.io/documentation/stable/reference/drawing.html#module-networkx.drawing.nx_agraph。
归档时间: |
|
查看次数: |
4159 次 |
最近记录: |