how to

Plot 3D

Aug 21, 2024
langspythonmatplotlib
1 Minutes
178 Words

Plot 3D

1
import matplotlib.pyplot as plt
2
from mpl_toolkits.mplot3d import Axes3D
3
import sys
4
5
def d3(tuples):
6
fig = plt.figure()
7
ax = fig.add_subplot(111, projection='3d')
8
9
# 解包三元组列表到X, Y, Z坐标
10
X, Y, Z = zip(*tuples)
11
12
# 绘制点
13
ax.scatter(X, Y, Z, color='b')
14
15
# 绘制线,连接相邻的点
26 collapsed lines
16
ax.plot(X, Y, Z, color='r')
17
18
# 设置图表标题和坐标轴标签
19
ax.set_title('3D Line Plot')
20
ax.set_xlabel('X axis')
21
ax.set_ylabel('Y axis')
22
ax.set_zlabel('Z axis')
23
24
ax.set_aspect('auto')
25
max_range = max(max(X) - min(X), max(Y) - min(Y), max(Z) - min(Z))
26
mid_x = (max(X) + min(X)) * 0.5
27
mid_y = (max(Y) + min(Y)) * 0.5
28
mid_z = (max(Z) + min(Z)) * 0.5
29
ax.set_xlim(mid_x - max_range * 0.5, mid_x + max_range * 0.5)
30
ax.set_ylim(mid_y - max_range * 0.5, mid_y + max_range * 0.5)
31
ax.set_zlim(mid_z - max_range * 0.5, mid_z + max_range * 0.5)
32
33
# 显示图表
34
plt.show()
35
36
# 示例:使用函数绘制图像
37
with open(sys.argv[1], 'r') as f:
38
ps = []
39
for line in f:
40
ps.append(tuple(map(float, line.strip().split()[:3])))
41
d3(ps)
Article title:Plot 3D
Article author:Julyfun
Release time:Aug 21, 2024
Copyright 2025
Sitemap