繁体   English   中英

如何在networkx中绘制非重叠边标签?

[英]How do I draw non-overlapping edge labels in networkx?

如何在networkx中绘制非重叠边标签? 使用选项scale看起来更好,但边缘标签仍然重叠,例如,

在此输入图像描述

相关的源代码如下:

# build a graph
G.add_edge(u, v, r=value)

# plot the graph
pos = nx.spring_layout(G, scale=3)

nx.draw(G, pos)

edge_labels = nx.get_edge_attributes(G,'r')
nx.draw_networkx_edge_labels(G, pos, edge_labels = edge_labels)

plt.savefig(filename)

这是spring_layout的文档 其中一个参数是k

k (float(默认=无)) - 节点之间的最佳距离。 如果为None,则距离设置为1 / sqrt(n),其中n是节点数。 增加此值可将节点移动得更远。

因此,使用k=5/math.sqrt(G.order())调用spring_layout或其他会增加距离的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM