使用networkx来生成网络科学里面三种常见的网络

ER随机网络

import networkx as nx #导入建网络模型包,命名nx
import matplotlib.pyplot as plt #导入科学绘图包,命名plt

#来生成一个有10个节点,连接概率为0.6的随机网络
er=nx.erdos_renyi_graph(10,0.6)
ps=nx.shell_layout(er)#布置框架
nx.draw(er,ps,with_labels=False,node_size=30)
plt.show()

运行结果如下:

使用networkx来生成网络科学里面三种常见的网络_第1张图片

WS小世界网络

import networkx as nx #导入建网络模型包,命名nx
import matplotlib.pyplot as plt #导入科学绘图包,命名plt

#来生成一个有10个节点,每个节点有4个邻居,随机化重连的概率为0.5
ws=nx.watts_strogatz_graph(10, 4, 0.5)
ps=nx.shell_layout(ws)#布置框架
nx.draw(ws,ps,with_labels=False,node_size=30)
plt.show()

运行结果如下:

使用networkx来生成网络科学里面三种常见的网络_第2张图片

BA无标度网络

import networkx as nx #导入建网络模型包,命名nx
import matplotlib.pyplot as plt #导入科学绘图包,命名plt

#来生成一个有10个节点,每次加入2条边的无标度网络
ba=nx.barabasi_albert_graph(10, 2)
ps=nx.shell_layout(ba)#布置框架
nx.draw(ba,ps,with_labels=False,node_size=30)
plt.show()

运行结果如下:

使用networkx来生成网络科学里面三种常见的网络_第3张图片

你可能感兴趣的:(python相关)