我正在使用随机图(使用 创建nx.gnm_random_graph()
)。布置这些的唯一巧妙方法是使用圆形布局。Networkx 提供了至少两种等效的方法来执行此操作,但我不知道如何使用其中任何一种来控制圆的半径:
nx.draw_networkx(G, pos=nx.circular_layout(G))
nx.draw_circular(G)
有人知道如何增加半径/直径以使节点不会被挤压在一起吗?
谢谢,保罗
您可以通过减小节点(和字体)大小或增加图形大小来获得更改半径的效果。这是一个示例,展示了两种改进具有重叠节点的循环图的圆形布局的方法。
import pylab
import networkx as nx
G=nx.cycle_graph(80)
pos=nx.circular_layout(G)
pylab.figure(1)
nx.draw(G,pos)
pylab.figure(2)
nx.draw(G,pos,node_size=60,font_size=8)
pylab.figure(3,figsize=(12,12))
nx.draw(G,pos)
pylab.show()
好吧,半径可以通过参数 'scale' 来管理nx.circular_layout()
。您可以在https://networkx.github.io/documentation/latest/reference/generated/networkx.drawing.layout.circular_layout.html找到更多信息