Проблемы с сохранением анимации matplotlib [дубликаты]
На этот вопрос уже есть ответ здесь:
Использование FFmpeg и IPython 1 ответЯ использую matplotlib для создания анимированной тепловой карты. У меня есть данные в текстовом файле (rs_h) с 3 столбцами - x, y, z; Я использую график рассеяния, чтобы сделать простую тепловую карту, а затем использую пакет анимации, чтобы обновить тепловую карту с течением времени
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.animation as animation
data = pd.read_table('rs_h', header=None, sep=r"\s*")
frames = np.array_split(data, 9)
def main():
numframes = 9
numpoints = 75
x, y, c = np.random.random((3, numpoints))
fig = plt.figure()
scat = plt.scatter(x, y, c=c)#, s=100)
ani = animation.FuncAnimation(fig, update_plot, frames=xrange(numframes),
interval = 5)
#ani.save("movie.avi", codec='avi')
plt.show()
def update_plot(i):
frame = frames[i]
scat = plt.scatter(frame[0], frame[1], c=frame[2])
return scat,
main()
У меня нет проблем с получением анимированной тепловой карты; Тем не менее, я сталкиваюсь с проблемой, когда я пытаюсь сохранить анимацию
/Users/Arjun/anaconda/lib/python2.7/site-packages/matplotlib/animation.py:695: UserWarning: MovieWriter ffmpeg unavailable
warnings.warn("MovieWriter %s unavailable" % writer)
Traceback (most recent call last):
File "heat_ani.py", line 29, in <module>
main()
File "heat_ani.py", line 21, in main
ani.save("movie.avi", codec='avi')
File "/Users/Arjun/anaconda/lib/python2.7/site-packages/matplotlib/animation.py", line 712, in save
with writer.saving(self._fig, filename, dpi):
AttributeError: 'str' object has no attribute 'saving'
Кто-нибудь знает, в чем проблема и как ее обойти?
РЕДАКТИРОВАТЬ: Проблема была в том, что у меня не было установлено ffmpeg. Простая установка brew позволила коду работать