最近做实验,需要保存动态生成的图,所以在网上搜搜了一下,比较简单的方法如一下链接:
Python绘制和保存动态图(gif或MP4)
其中最后一种方法最简单,使用animation.ArtistAnimation方法,讲画的“图”保存列表中传递给他就行了,但是在保存阶段,即执行ani.save("test.gif", writer='pillow')
时,却总是发出错,包括[buffer not enough],[index out of range]
,说内存不足、索引超界。
搜索后发现,其实这个方法是2个不同包之间的“联动”,即调用这个方法同时用了matplotlib和pillow(ani.save的writer参数中用了“pillow”)这2个包,所以对这2个包的版本号有一定的需求。
解决方法
你可能需要将这2个包更新为最新状态,就基本可以解决问题了
使用命令pip uninstall pillow
和pip install pillow
重新安装最新的pillow在用命令pip uninstall matplotlib
和pip install matplotlib
重新安装最新的matplotlib