我想保存使用Python创建的矢量动画。当我执行程序时,我得到几个图像_tmp0001.png,直到_tmp0100.png但是暂时。执行结束时,100个图像消失,不生成avi文件。请在这里找到一个最小的工作环境:
import numpy as np
from matplotlib import pyplot as plt
from matplotlib import animation
from numpy import pi
X,Y = np.meshgrid(np.arange(0,2*np.pi,.2),np.arange(0,2*np.pi,.2) )
U = np.cos(X)
V = np.sin(Y)
fig,ax = plt.subplots(1,1)
Q = ax.quiver( X, Y, U, V, pivot='mid', color='r', units='inches')
ax.set_xlim(0, 2*pi)
ax.set_ylim(0, 2*pi)
def update_quiver(num, Q, X, Y):
U = np.cos(X + num*0.1)
V = np.sin(Y + num*0.1)
Q.set_UVC(U,V)
return Q,
anim = animation.FuncAnimation(fig, update_quiver, fargs=(Q, X, Y),
interval=10, blit=False)
anim.save("movie.avi", codec='avi')
plt.show()
任何帮助都将受到高度赞赏!谢谢!
答案 0 :(得分:1)
在对ffmpeg
进行小修改和安装后,代码生成了一个avi文件。
我删除了codecs='avi'
参数:
anim.save("movie.avi")
已移除对plt.show
的调用:
#plt.show()
以下是生成的视频:http://youtu.be/p4kpA9mcqbs