<p>你想看一下<code>FileMovieWriter</code>子类(参见<a href="http://matplotlib.org/2.0.0rc2/api/animation_api.html#writer-classes" rel="nofollow noreferrer">http://matplotlib.org/2.0.0rc2/api/animation_api.html#writer-classes</a>),你可能想把<code>FileMoveWriter</code>分成子类,比如</p>
<pre><code>import matplotlib.animation as ma
class BunchOFiles(ma.FileMovieWriter):
def setup(self, fig, dpi, frame_prefix):
super().setup(fig, dpi, frame_prefix, clear_temp=False)
def _run(self):
# Uses subprocess to call the program for assembling frames into a
# movie file. *args* returns the sequence of command line arguments
# from a few configuration options.
pass
def grab_frame(self, **savefig_kwargs):
'''
Grab the image information from the figure and save as a movie frame.
All keyword arguments in savefig_kwargs are passed on to the 'savefig'
command that saves the figure.
'''
# Tell the figure to save its data to the sink, using the
# frame format and dpi.
with self._frame_sink() as myframesink:
self.fig.savefig(myframesink, format=self.frame_format,
dpi=self.dpi, **savefig_kwargs)
def cleanup(self):
# explictily skip a step in the mro
ma.MovieWriter.cleanup(self)
</code></pre>
<p>(这是不测试的,最好只实现一个实现<code>saving</code>、<code>grab_frame</code>、<code>finished</code>和<code>setup</code>的类)</p>