spring_layout#

spring_layout(G, k=None, pos=None, fixed=None, iterations=50, threshold=0.0001, weight='weight', scale=1, center=None, dim=2, seed=None)[源代码]#

使用Fruchterman-Reingold力定向算法定位节点。

该算法模拟了网络的一种力定向表示,将边视为保持节点闭合的弹簧,而将节点视为排斥对象,有时称为反重力力。模拟一直持续到位置接近平衡。

有一些硬编码值:节点之间的最小距离(0.01)和“温度”为0.1,以确保节点不会飞走。在模拟过程中, k 但有助于确定节点之间的距离 scalecenter 在模拟结束时重新缩放后确定大小和位置。

固定一些节点不允许它们在模拟中移动。它还会在模拟结束时关闭重缩放功能。另外,设置 scaleNone 关闭重新缩放。

参数
G网络X图表或节点列表

将为G中的每个节点分配一个位置。

k浮点(默认值=无)

节点之间的最佳距离。如果没有,则将距离设置为1/SQRT(N),其中n是节点数。增加该值可将节点移动得更远。

posDICT或NONE可选(默认值=无)

节点的初始位置作为字典,节点作为键,值作为坐标列表或元组。如果没有,则使用随机初始位置。

fixed列表或无可选(默认值=无)

节点保持在初始位置不变。节点不在 G.nodes 都被忽略了。在以下情况下引发ValueError fixed 指明的和 pos 不。

iterationsINT可选(默认值=50)

最大迭代次数

threshold: float optional (default = 1e-4)

节点位置变化的相对误差阈值。如果误差低于此阈值,迭代将停止。

weight字符串或无可选(默认值=‘Weight’)

保存用于边权重的数值的边属性。规模越大,吸引力就越强。如果没有,则所有边权重为1。

scale编号或无(默认为:1)

位置的比例因子。不使用,除非 fixed is None 。如果比例为None,则不执行任何重新缩放。

center类似数组或无

要围绕其居中布局的坐标对。不使用,除非 fixed is None

dim集成

布局的维度。

seedINT、RandomState实例或无可选(默认值=无)

设置确定性节点布局的随机状态。如果为int, seed 是随机数生成器使用的种子,如果numpy.随机.RandomState实例, seed 是随机数生成器,如果没有随机数生成器,则随机数生成器是numpy.Random使用的RandomState实例。

返回
posDICT

按节点设置关键字的位置词典

实例

>>> G = nx.path_graph(4)
>>> pos = nx.spring_layout(G)

#同样使用较长但等效的函数名>>>pos=nx.fruchterman_reingold_layout(g)