python - 我无法在 ffmpeg 中保存动画
问题描述
我尝试了各种示例,但找不到合适的解决方案。这是我的项目的示例代码,我想将其保存为 mp4 格式,我使用了 ffmpeg。如果我使用 df = pd.DataFrame(np.random.rand(250,3)) 动画被保存,但它不适用于我的示例代码,它显示关键错误 = 0。注意:df1 = pd.DataFrame(np .random.randint(5,15,[250,3]))。对此的任何建议将不胜感激。先感谢您
import pandas as pd
import numpy as np
import ma``tplotlib.pyplot as plt
import matplotlib.animation as animation
df = data.iloc[0:250, 4:12]
df1 = df2.iloc[:,0:3]
a1 = df.iloc[:,0]/2
a2 = df.iloc[:,1]/2
b1 = df.iloc[:,2]/2
b2 = df.iloc[:,3]/2
c1 = df.iloc[:,4]/2
c2 = df.iloc[:,5]/2
m1 = df1.iloc[:,0]
m2 = df1.iloc[:,1]
m3 = df1.iloc[:,2]
fig ,ax = plt.subplots()
l1, = ax.plot (vert1, vert2, 'ro', markersize = m1[0])
l2, = ax.plot (long1, long2, 'ro', markersize = m2[0])
l3, = ax.plot (tras1, tras2, 'ro', markersize = m3[0])
def init():
l1.set_data([],[])
l2.set_data([],[])
l3.set_data([],[])
return (l1,l2,l3)
def animate(i,l1,l2,l3):
l1.set_data(vert1[i], vert2[i])
l1.set_markersize(m1[i])
l2.set_data(long1[i], long2[i])
l2.set_markersize(m2[i])
l3.set_data(tras1[i], tras2[i])
l3.set_markersize(m3[i])
return (l1,l2,l3)
Writer = animation.writers['ffmpeg']
writer = Writer(fps= 100, metadata = dict(artist = 'me'), bitrate = 1800)
ani = animation.FuncAnimation(fig, animate, fargs=(l1,l2,l3), init_func=init, interval=10, blit=False)
ani.save('/Users/gokulthangavel/Downloads/basic_animation.mp4', writer = writer)
plt.show()
解决方案
推荐阅读
- javascript - 节点 JS 部署
- node.js - Node.js:将 Cucumber JSON 结果发送到 Jira 的 Xray - jira-client-xray 给出 HTTP 405 错误
- r - limma:smooth.spline 中的错误(lambda,pi0,df = smooth.df):不允许输入中的缺失或无限值
- google-apps-script - 谷歌工作表脚本 - 复制并放置一个单元格值
- java - 咖啡因缓存:永远不会调用 write()
- linux-kernel - `ioctl` 读写 GPIO:无效参数
- masm - 我无法在 masm x86 中进行选择排序
- gitlab - 在 GitLab 中为节点项目创建 2 个管道
- ios - 在 Mac Catalyst 中访问 NSWindow
- google-app-maker - 需要一些帮助来分配答案到谷歌应用程序制造商表单