python 用点坐标和邻接矩阵画图
时间: 2023-08-13 19:01:57 浏览: 129
要使用点坐标和邻接矩阵绘制图形,你可以使用Python中的matplotlib库来实现。下面是一个使用点坐标和邻接矩阵绘制图形的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
def draw_graph(coordinates, adjacency_matrix):
num_nodes = adjacency_matrix.shape[0]
# 绘制节点
for i in range(num_nodes):
x, y = coordinates[i]
plt.scatter(x, y, color='red', zorder=10)
plt.text(x, y, str(i), fontsize=12, ha='center', va='center')
# 绘制边
for i in range(num_nodes):
for j in range(i+1, num_nodes):
if adjacency_matrix[i][j] == 1:
x1, y1 = coordinates[i]
x2, y2 = coordinates[j]
plt.plot([x1, x2], [y1, y2], color='black')
plt.axis('off')
plt.show()
# 示例输入点坐标
coordinates = np.array([[0, 0],
[1, 1],
[2, 0]])
# 示例输入邻接矩阵
adjacency_matrix = np.array([[0, 1, 1],
[1, 0, 0],
[1, 0, 0]])
# 绘制图形
draw_graph(coordinates, adjacency_matrix)
```
运行以上代码,将会显示一个图形,其中节点用红色点表示,节点编号用文本标注,边用黑色线条表示。在这个示例中,有3个节点,它们的坐标分别为(0, 0),(1, 1),(2, 0),并且存在一些边连接这些节点。
希望这个示例能够帮助到你!
阅读全文