matplotlib和imagemagick 用于GIF动画保存

首先安装imagemagick http://www.imagemagick.org/script/download.php

matplotlib和imagemagick 用于GIF动画保存_第1张图片

安装系统,选择相应的文件下载安装即可,具体可参考 Windows系统安装及初步使用ImageMagick

代码测试

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

fig, ax = plt.subplots()
xdata, ydata = [], []
ln, = plt.plot([], [], 'ro',animated=True)

def init():
    ax.set_xlim(-np.pi,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,

anim = animation.FuncAnimation(fig, update, frames=np.linspace(-np.pi,np.pi, 90),interval=10,
                    init_func=init,blit=True)

anim.save('test_animation.gif',writer='imagemagick')
plt.show()

 报错如下:

OSError: Error saving animation to file (cause: [Errno 22] Invalid argument) Stdout: b'' StdError: b''. It may help to re-run with --verbose-debug.

解决办法

参考 Exporting animated gif using matplotlib ,需要添加convert.exe路径,但老版本的ImageMagick 使用的是convert.exe,而新版本使用的是magick.exe,为此在文件保存之前 需添加magick.exe的路径

plt.rcParams["animation.convert_path"] = "C:\Program Files\ImageMagick-7.0.9-Q16\magick.exe" # magick.exe路径
anim.save('test_animation.gif',writer='imagemagick')

最后在运行目录下即可出现保存的test.gif文件。

 

机器学习过程可视化:一步一教你用Matplotlib 保存GIF图片

你可能感兴趣的:(Python学习)