Python绘制和保存动态图(gif或MP4)

只显示,不保存

以下代码即可实现动态地展示图片,但动态图每次只显示新的数据,不会保留旧的数据。

	fig = plt.figure()
    plt.ion()
    plt.show()
    ims = []
	for i in range(1,10):
        im = plt.plot(np.linspace(0, i,10), np.linspace(0, np.random.randint(i),10))
        ims.append(im)
        plt.draw()
        plt.pause(0.2)

保存为gif

以下代码即可实现生成和保存动态图,但动态图每次只显示新的数据,不会保留旧的数据。

from matplotlib import pyplot as plt
from celluloid import Camera

fig = plt.figure()
camera = Camera(fig)
for i in range(10):
    plt.plot([i] * 10)
    camera.snap()
animation = camera.animate()
animation.save('celluloid_minimal.gif')

参考链接


保存gif或MP4文件

以下代码即可实现生成和保存动态图,但动态图每次只显示新的数据,不会保留旧的数据。

import matplotlib.animation as animation
import matplotlib.pyplot as plt
ims = []
fig = plt.figure()
for i in range(1,10):
	im = plt.plot(np.linspace(0, i,10), np.linspace(0, np.random.randint(i),10))
    # 绘制散点图时,比较特殊需要调用findobj:im = plt.scatter(1,1).findobj()
    ims.append(im)
ani = animation.ArtistAnimation(fig, ims, interval=500, repeat_delay=1000)
# ani.save("test.gif", writer='pillow')

Writer = animation.writers['ffmpeg']  # 需安装ffmpeg
writer = Writer(fps=15, metadata=dict(artist='Me'), bitrate=1800)
ani.save("movie.mp4",writer=writer)

参考链接
保存为mp4

  • 6
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值