python编程根据邻接矩阵生成网络拓扑图
时间: 2023-06-12 08:03:32 浏览: 202
生成网络拓扑图可以使用Python中的networkx库。下面是一个根据邻接矩阵生成网络拓扑图的示例代码:
```python
import networkx as nx
import matplotlib.pyplot as plt
# 定义邻接矩阵
adj_matrix = [
[0, 1, 1, 0, 0],
[1, 0, 1, 1, 1],
[1, 1, 0, 0, 1],
[0, 1, 0, 0, 1],
[0, 1, 1, 1, 0]
]
# 创建有向图
G = nx.DiGraph()
# 添加节点
for i in range(len(adj_matrix)):
G.add_node(i)
# 添加边
for i in range(len(adj_matrix)):
for j in range(len(adj_matrix)):
if adj_matrix[i][j] == 1:
G.add_edge(i, j)
# 绘制网络拓扑图
nx.draw(G, with_labels=True)
plt.show()
```
在上面的代码中,我们定义了一个邻接矩阵,然后使用networkx库创建了一个有向图,并添加了节点和边。最后,我们使用nx.draw()函数绘制了网络拓扑图,并使用plt.show()函数显示出来。你可以根据自己的邻接矩阵修改上面的示例代码,生成你所需要的网络拓扑图。
阅读全文