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

Skip to content

Commit 3630167

Browse files
committed
Alternative fix for passing iterator as frames to FuncAnimation
1 parent 2b8b189 commit 3630167

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

lib/matplotlib/animation.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1658,7 +1658,14 @@ def __init__(self, fig, func, frames=None, init_func=None, fargs=None,
16581658
elif callable(frames):
16591659
self._iter_gen = frames
16601660
elif np.iterable(frames):
1661-
self._iter_gen = lambda: iter(frames)
1661+
if kwargs.get('repeat', True):
1662+
def iter_frames(frames=frames):
1663+
while True:
1664+
this, frames = itertools.tee(frames, 2)
1665+
yield from this
1666+
self._iter_gen = iter_frames
1667+
else:
1668+
self._iter_gen = lambda: iter(frames)
16621669
if hasattr(frames, '__len__'):
16631670
self.save_count = len(frames)
16641671
else:

0 commit comments

Comments
 (0)