animation.FuncAnimation函数
时间: 2023-10-14 16:14:43 浏览: 177
Python动态绘图,包括椭圆、双曲线、抛物线、摆线、心形线等常见曲线的生成。
`animation.FuncAnimation`是matplotlib动画模块中的一个函数,用于创建动画。它接受四个主要参数:
1. fig: `matplotlib.figure.Figure`对象,表示整个图形窗口(可以通过`plt.figure()`创建)。
2. func: 回调函数,每次调用它都会在绘图区域中绘制一个新的帧。
3. frames: 帧数或可迭代对象,每个元素都将传递给回调函数。
4. interval: 动画帧之间的间隔时间(毫秒)。
此外还有许多其他参数,例如保存动画、帧率、循环等。
示例用法:
```python
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
fig, ax = plt.subplots()
xdata, ydata = [], []
line, = ax.plot([], [])
def animate(frame):
xdata.append(frame)
ydata.append(np.sin(frame))
line.set_data(xdata, ydata)
return line,
ani = FuncAnimation(fig, animate, frames=np.linspace(0, 2*np.pi, 128),
interval=50, blit=True)
plt.show()
```
这个例子创建了一个正弦波动画,每帧之间间隔50毫秒。在`animate`函数中,我们将帧数作为x轴,正弦函数作为y轴,然后将它们添加到`xdata`和`ydata`数组中。我们还通过设置`line.set_data`来更新线条的数据。最后,我们返回一个包含线条对象的元组,以便`FuncAnimation`函数知道要更新哪些对象。
阅读全文