matplotlib和imagemagick 用於GIF動畫保存

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

安裝系統,選擇相應的文件下載安裝即可,具體可參考 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圖片

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章