Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 97eb5e3

Browse files
committed
htmlwriter, put some initialisation of frames in setup
1 parent 9f74ea7 commit 97eb5e3

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

lib/matplotlib/animation.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -842,16 +842,17 @@ def __init__(self, fps=30, codec=None, bitrate=None, extra_args=None,
842842
self.default_mode = 'loop'
843843
_log.warning("unrecognized default_mode: using 'loop'")
844844

845-
self._saved_frames = []
846-
self._total_bytes = 0
847-
self._hit_limit = False
848845
super().__init__(fps, codec, bitrate, extra_args, metadata)
849846

850847
def setup(self, fig, outfile, dpi, frame_dir=None):
851848
root, ext = os.path.splitext(outfile)
852849
if ext not in ['.html', '.htm']:
853850
raise ValueError("outfile must be *.htm or *.html")
854851

852+
self._saved_frames = []
853+
self._total_bytes = 0
854+
self._hit_limit = False
855+
855856
if not self.embed_frames:
856857
if frame_dir is None:
857858
frame_dir = root + '_frames'
@@ -868,7 +869,6 @@ def grab_frame(self, **savefig_kwargs):
868869
# Just stop processing if we hit the limit
869870
if self._hit_limit:
870871
return
871-
suffix = '.' + self.frame_format
872872
f = BytesIO()
873873
self.fig.savefig(f, format=self.frame_format,
874874
dpi=self.dpi, **savefig_kwargs)
@@ -902,11 +902,12 @@ def communicate(self):
902902
if self.embed_frames:
903903
fill_frames = _embedded_frames(self._saved_frames,
904904
self.frame_format)
905+
Nframes = len(self._saved_frames)
905906
else:
906907
# temp names is filled by FileMovieWriter
907908
fill_frames = _included_frames(self._temp_names,
908909
self.frame_format)
909-
910+
Nframes = len(self._temp_names)
910911
mode_dict = dict(once_checked='',
911912
loop_checked='',
912913
reflect_checked='')
@@ -917,7 +918,7 @@ def communicate(self):
917918
with open(self.outfile, 'w') as of:
918919
of.write(JS_INCLUDE)
919920
of.write(DISPLAY_TEMPLATE.format(id=uuid.uuid4().hex,
920-
Nframes=len(self._temp_names),
921+
Nframes=Nframes,
921922
fill_frames=fill_frames,
922923
interval=interval,
923924
**mode_dict))

0 commit comments

Comments
 (0)