matplotlib绘制三维网络拓扑图
时间: 2023-08-04 12:08:46 浏览: 153
[Matplotlib科学绘图系列]使用Matplotlib绘制三维包络面图
要使用Matplotlib绘制三维网络拓扑图,你可以使用mpl_toolkits库中的mplot3d模块。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 创建画布和3D坐标轴
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
# 定义节点列表和连接线列表
nodes = [(0, 0, 0), (1, 1, 1), (2, 2, 2), (3, 3, 3)]
edges = [(0, 1), (0, 2), (0, 3)]
# 绘制节点
for node in nodes:
ax.scatter(node[0], node[1], node[2], color='b')
# 绘制连接线
for edge in edges:
ax.plot([nodes[edge[0]][0], nodes[edge[1]][0]],
[nodes[edge[0]][1], nodes[edge[1]][1]],
[nodes[edge[0]][2], nodes[edge[1]][2]], color='r')
# 设置坐标轴标签
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
# 显示图形
plt.show()
```
这段代码会创建一个空白的三维坐标轴,并在其中绘制了一些节点和连接线。你可以根据自己的需求修改节点和连接线的位置、样式和颜色。
阅读全文