python - 保存的 .mp4 文件中前几帧的 Matplotlib 动画空白
问题描述
我正在尝试使用 matplotlib 的 FuncAnimation 框架运行一个非常慢的动画(每帧 500 毫秒)。当我这样做并将结果保存为 .mp4 文件时,当我使用 Windows 10“电影和电视”应用程序时,前几秒钟总是空白,或者在我使用“Windows Media Player”应用程序时冻结。我不喜欢这个。这是一个错误,我的误用,还是框架的一个不可避免的工件?
这是一个直接从文档中提取的最小示例——我只是将interval=500
关键字参数添加到FuncAnimation
,然后以标准方式保存动画:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
fig, ax = plt.subplots()
xdata, ydata = [], []
ln, = plt.plot([], [], 'ro')
def init():
ax.set_xlim(0, 2*np.pi)
ax.set_ylim(-1, 1)
return ln,
def update(frame):
xdata.append(frame)
ydata.append(np.sin(frame))
ln.set_data(xdata, ydata)
return ln,
ani = FuncAnimation(fig, update, frames=np.linspace(0, 2*np.pi, 128),
init_func=init, interval=500, blit=True)
plt.show()
ani.save("Example.mp4", dpi=200)
解决方案
推荐阅读
- javascript - 如何将放置值作为新数据存储在我的数组中?
- javascript - 如何区分nodejs中的实际执行和模块导入?
- python - 在 Jinja(Django) 中使用字典索引显示列表元素
- c++ - 函数重载的顺序很重要吗?
- php - 如何在 PHP 中显示登录的用户信息
- c++ - 可变参数模板和模板类
- scala - Scala:是否可以使用宏注释来注释类的构造函数字段?(宏观天堂)
- geoserver - SLD 过滤器 MAX 功能
- elasticsearch - 在elasticsearch中为每个匹配获取“n”记录
- ios - 为什么更新功能在 Unity 中 UnityARWorldMap 场景的 UnityARHitTestExample 中不起作用?