matplotlib.animation.FuncAnimation #
- Klasse matplotlib.animation. FuncAnimation ( fig , func , frames = None , init_func = None , fargs = None , save_count = None , * , cache_frame_data = True , ** kwargs ) [source] #
Erstellt eine Animation durch wiederholtes Aufrufen einer Funktion func .
Notiz
Sie müssen die erstellte Animation in einer Variablen speichern, die so lange lebt, wie die Animation laufen soll. Andernfalls wird das Animationsobjekt einer Garbage Collection unterzogen und die Animation wird angehalten.
- Parameter :
- Feige
Figure
Das figure-Objekt, das verwendet wird, um benötigte Ereignisse wie Draw oder Resize abzurufen.
- Funktion aufrufbar
Die Funktion, die bei jedem Frame aufgerufen werden soll. Das erste Argument ist der nächste Wert in Frames . Alle zusätzlichen Positionsargumente können über den Parameter fargs bereitgestellt werden.
Die erforderliche Unterschrift lautet:
def func(frame, *fargs) -> iterable_of_artists
Wenn , muss func ein Iterable aller Künstler zurückgeben, die geändert oder erstellt wurden. Diese Informationen werden vom Blitting-Algorithmus verwendet, um zu bestimmen, welche Teile der Figur aktualisiert werden müssen. Der Rückgabewert ist dann unbenutzt und kann in diesem Fall weggelassen werden.
blit == True
blit == False
- frames iterable, int, generator function oder None, optional
Datenquelle zum Übergeben der Funktion und jedes Frames der Animation
Wenn es sich um eine iterierbare handelt, verwenden Sie einfach die bereitgestellten Werte. Wenn das Iterable eine Länge hat, überschreibt es save_count kwarg.
Wenn es sich um eine Ganzzahl handelt, entspricht dies der Übergabe
range(frames)
Wenn eine Generatorfunktion, dann muss die Signatur sein:
def gen_function() -> obj
Wenn keine , dann gleichbedeutend mit Bestehen
itertools.count
.
In all diesen Fällen werden die Werte in Frames einfach an die vom Benutzer bereitgestellte Funktion weitergegeben und können daher jeden beliebigen Typ haben.
- init_func aufrufbar, optional
Eine Funktion zum Zeichnen eines klaren Rahmens. Wenn nicht angegeben, werden die Ergebnisse des Zeichnens vom ersten Element in der Rahmensequenz verwendet. Diese Funktion wird einmalig vor dem ersten Frame aufgerufen.
Die erforderliche Unterschrift lautet:
def init_func() -> iterable_of_artists
Wenn , muss init_func eine Iterable von neu zu zeichnenden Künstlern zurückgeben. Diese Informationen werden vom Blitting-Algorithmus verwendet, um zu bestimmen, welche Teile der Figur aktualisiert werden müssen. Der Rückgabewert ist dann ungenutzt und kann in diesem Fall weggelassen werden.
blit == True
blit == False
- fargs- Tupel oder None, optional
Zusätzliche Argumente, die an jeden Aufruf von func übergeben werden .
- save_count int, Standard: 100
Fallback für die Anzahl der Werte von Frames zum Cache. Dies wird nur verwendet, wenn die Anzahl der Frames nicht aus frames abgeleitet werden kann , also wenn es sich um einen Iterator ohne Länge oder einen Generator handelt.
- Intervall int, Standard: 200
Verzögerung zwischen Frames in Millisekunden.
- repeat_delay int, Standard: 0
Die Verzögerung in Millisekunden zwischen aufeinanderfolgenden Animationsausführungen, wenn „Repeat“ auf „True“ gesetzt ist.
- Repeat Bool, Standard: True
Ob die Animation wiederholt wird, wenn die Frame-Sequenz abgeschlossen ist.
- blit bool, Standard: False
Ob Blitting verwendet wird, um das Zeichnen zu optimieren. Hinweis: Bei der Verwendung von Blitting werden alle animierten Künstler gemäß ihrer Zorder gezeichnet; Sie werden jedoch unabhängig von ihrer Z-Reihenfolge über alle vorherigen Künstler gezogen.
- cache_frame_data bool, Standard: True
Ob Rahmendaten zwischengespeichert werden. Das Deaktivieren des Caches kann hilfreich sein, wenn Frames große Objekte enthalten.
- Feige
- __init__ ( fig , func , frames = None , init_func = None , fargs = None , save_count = None , * , cache_frame_data = True , ** kwargs ) [source] #
Methoden
__init__
(fig, func[, frames, init_func, ...])Gibt eine neue Folge von Rahmeninformationen zurück.
Gibt eine neue Sequenz gespeicherter/zwischengespeicherter Rahmeninformationen zurück.
pause
()Unterbrechen Sie die Animation.
resume
()Setzen Sie die Animation fort.
save
(Dateiname[, Writer, fps, dpi, Codec, ...])Speichern Sie die Animation als Filmdatei, indem Sie jeden Frame zeichnen.
to_html5_video
([embed_limit])Konvertieren Sie die Animation in ein HTML5
<video>
-Tag.to_jshtml
([fps, embed_frames, default_mode])Generieren Sie eine HTML-Darstellung der Animation.