Python 为什么matplotlib动画在保存每个连续帧时会变慢?

Python 为什么matplotlib动画在保存每个连续帧时会变慢?,python,animation,matplotlib,Python,Animation,Matplotlib,我注意到,当我使用Matplotlib制作动画时,保存每一帧所需的时间会越来越长。我知道这一点,因为我在figureCanvabase类的print\u figure方法中引入了一个计时检查/usr/lib/pymodules/python2.7/matplotlib/backend\u base.py: import time t3=time.time() result = print_method( filename

我注意到,当我使用Matplotlib制作动画时,保存每一帧所需的时间会越来越长。我知道这一点,因为我在
figureCanvabase类的
print\u figure
方法中引入了一个计时检查
/usr/lib/pymodules/python2.7/matplotlib/backend\u base.py

        import time 
        t3=time.time() 
        result = print_method(
            filename,
            dpi=dpi,
            facecolor=facecolor,
            edgecolor=edgecolor,
            orientation=orientation,
            bbox_inches_restore=_bbox_inches_restore,
            **kwargs)
        t4=time.time()
        print("LOG:       backend_bases          -----",t4-t3) 
我花了一些时间才达到这一点,现在我达到了收益递减的点,因为print_方法似乎是动态确定的

有人知道为什么保存动画的第100帧要比保存第一帧花费更长的时间吗

我可以通过制作几个较短的动画,然后将它们缝合在一起来避免这个问题,但我更愿意首先理解为什么存在这个问题


我会理解周期性地需要获得更多内存是如何为保存每个第n个图像引入周期性延迟的,但我不理解保存每个后续帧所需时间的稳定、几乎线性的增长率。这是由于每次向动画添加新帧时都会进行某种压缩造成的吗?是否每次动画增长时都会重新分配内存?或者是别的什么?

发布您正在使用的版本会很有用-我不能说我经历过这种情况,但我从来没有看过。@Ajean-我正在使用matplotlib 1.3.1和Python 2.7.6发布您正在使用的版本会很有用-我不能说我经历过这种情况,但是我从来没有看过。@Ajean-我使用的是matplotlib 1.3.1和Python 2.7.6