已知的邻接矩阵如何用python生成无向图
时间: 2024-05-13 22:16:01 浏览: 113
端口设置的问题-python根据已知邻接矩阵绘制无向图操作示例
可以使用Python中的networkx库来生成无向图。下面是一个简单的代码示例:
```python
import networkx as nx
import matplotlib.pyplot as plt
# 假设邻接矩阵为以下形式
adj_matrix = [
[0, 1, 1, 0],
[1, 0, 1, 1],
[1, 1, 0, 1],
[0, 1, 1, 0]
]
# 创建无向图
G = nx.Graph()
# 添加节点
for i in range(len(adj_matrix)):
G.add_node(i+1)
# 添加边
for i in range(len(adj_matrix)):
for j in range(i+1, len(adj_matrix)):
if adj_matrix[i][j] == 1:
G.add_edge(i+1, j+1)
# 绘制图形
nx.draw(G, with_labels=True)
plt.show()
```
在这个示例中,我们假设邻接矩阵为一个二维数组,其中1表示两个节点之间有边,0表示没有边。我们首先创建了一个空的无向图,然后逐一添加节点和边。最后,我们使用networkx库的绘图功能绘制了这个无向图。
阅读全文