使用matplotlib绘图实现动态刷新3D(动画)效果
时间: 2023-09-05 10:07:41 浏览: 39
以下是使用matplotlib绘图实现动态刷新3D(动画)效果的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
import mpl_toolkits.mplot3d.axes3d as p3
import matplotlib.animation as animation
# 创建图像对象和子图对象
fig = plt.figure()
ax = p3.Axes3D(fig)
# 定义数据点的数量和坐标范围
N = 100
X = np.random.uniform(-10, 10, N)
Y = np.random.uniform(-10, 10, N)
Z = np.random.uniform(-10, 10, N)
# 定义动画函数
def animate(frame):
# 清空子图
ax.clear()
# 设置坐标轴范围
ax.set_xlim(-10, 10)
ax.set_ylim(-10, 10)
ax.set_zlim(-10, 10)
# 绘制数据点
ax.scatter(X, Y, Z)
# 旋转角度
ax.view_init(elev=10., azim=frame)
# 创建动画对象
ani = animation.FuncAnimation(fig, animate, frames=np.arange(0, 360, 2), interval=50)
# 显示动画
plt.show()
```
该代码会生成一个随机分布的数据点,然后在3D坐标系中动态地旋转视角,形成动态刷新的3D(动画)效果。可以通过修改数据点的数量和坐标范围,以及调整动画函数中的视角旋转角度等参数,来生成不同的效果。