watts_strogatz_graph#
- watts_strogatz_graph(n, k, p, seed=None, *, create_using=None)[源代码]#
返回一个 Watts–Strogatz 小世界图。
- 参数:
- nint
节点数量
- kint
在环状拓扑中,每个节点与其最近的
k
个邻居连接。- pfloat
每条边重新连接的概率
- seedinteger, random_state 或 None (默认值)
随机数生成状态的指示器。详见 随机性。
- create_using图构造函数, 可选 (默认值=nx.Graph)
要创建的图类型。如果是图实例,则在填充前清空。不支持多重图和有向图类型,会引发
NetworkXError
。
注释
首先创建一个包含 \(n\) 个节点的环 [1]。然后将环中的每个节点连接到其最近的 \(k\) 个邻居(如果 \(k\) 是奇数,则连接 \(k - 1\) 个邻居)。然后通过以下方式替换某些边来创建捷径:对于基础“\(n\)-环带 \(k\) 个最近邻居”中的每条边 \((u, v)\),以概率 \(p\) 将其替换为一条新边 \((u, w)\),其中 \(w\) 是从现有节点中均匀随机选择的。
与
newman_watts_strogatz_graph()
不同,随机重新连接不会增加边的数量。重新连接后的图不像connected_watts_strogatz_graph()
那样保证是连通的。参考文献
[1]Duncan J. Watts and Steven H. Strogatz, Collective dynamics of small-world networks, Nature, 393, pp. 440–442, 1998.