1
matplotlib動畫例如使用從matplotlib網站的示例代碼:AttributeError的: 'FigureCanvasMac' 對象有沒有屬性 'restore_region' 兼容Mac OSX
我得到的錯誤:
AttributeError: 'FigureCanvasMac' object has no attribute 'restore_region'
輸出的垃圾郵件作爲動畫循環。動畫本身好好嘗試一下顯示器,只是表示:
此代碼工作正常在我的Windows PC上,而其他post I could find on this建議您設置:
blit=False
修復。我仍然得到相同的錯誤,所以不知道是否有人知道我可以如何解決這個問題。我跑的代碼是:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
def update_line(num, data, line):
line.set_data(data[...,:num])
return line,
fig1 = plt.figure()
data = np.random.rand(2, 25)
l, = plt.plot([], [], 'r-')
plt.xlim(0, 1)
plt.ylim(0, 1)
plt.xlabel('x')
plt.title('test')
line_ani = animation.FuncAnimation(fig1, update_line, 25, fargs=(data, l),
interval=50, blit=True)
#line_ani.save('lines.mp4')
fig2 = plt.figure()
x = np.arange(-9, 10)
y = np.arange(-9, 10).reshape(-1, 1)
base = np.hypot(x, y)
ims = []
for add in np.arange(15):
ims.append((plt.pcolor(x, y, base + add, norm=plt.Normalize(0, 30)),))
im_ani = animation.ArtistAnimation(fig2, ims, interval=50, repeat_delay=3000,
blit=True)
#im_ani.save('im.mp4', metadata={'artist':'Guido'})
plt.show()
感謝
當我設置blit = False時,該示例在我的Mac(OS-X 10.11.5,matplotlib 1.5.0)上正常工作。你是否將blit關鍵字設置爲False? – titusjan