[PYTHON] Flexible Animationserstellung mit Animation.FuncAnimation von matplotlib

Pythons Matplotlib

Es gibt eine Funktion, mit der Animationen flexibel erstellt werden können. Verwendung dieser Funktion.

** Beispielprogramm **

sample_animation.py


import matplotlib.animation as anm
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure(figsize = (10, 6))
x = np.arange(0, 10, 0.1)

def update(i, fig_title, A):
	if i != 0:
		plt.cla()                      #Löschen Sie das aktuell gezeichnete Diagramm

	y = A * np.sin(x - i)
	plt.plot(x, y, "r")
	plt.title(fig_title + 'i=' + str(i))


ani = anm.FuncAnimation(fig, update, fargs = ('Initial Animation! ', 2.0), \
	interval = 100, frames = 132)

ani.save("Sample.gif", writer = 'imagemagick')

Wenn Sie den obigen Code ausführen, sollte die folgende Animationsdatei "Sample.gif" generiert werden. Animation.gif

** Erklärung des Beispielprogramms **

Der Schlüssel ist

ani = anm.FuncAnimation(fig, update, fargs = ('Initial Animation! ', 2.0), \
	interval = 100, frames = 132)

Ein Satz.

1. Argument Abb

Figurenobjekt. Geben Sie diesem Objekt Befehle in Bezug auf Figuren (Animation).

2. Argument Update

Eine Rückruffunktion, die jede der Figuren erstellt, aus denen die Animation besteht. Wenn Sie eine Animation erstellen, müssen Sie mehrere Diagramme erstellen und zusammenfügen. Mit der Funktion "FuncAnimation" können Sie sie jedoch mehrmals aufrufen, indem Sie die Funktion aufrufen, mit der das Diagramm mehrmals erstellt wird. Es wurde realisiert. updateDie Regeln der Funktion sind wie folgt.

Option Fargs

Eine Option, mit der Sie das zweite und die nachfolgenden Argumente angeben können, wenn Sie zwei oder mehr Argumente für die Funktion "Update" des zweiten Arguments bereitstellen möchten. Im obigen Beispielprogrammbeispiel hat das zweite Argument `fig_title``` der` update Funktion `` `" Initial Animation! "` `` Und das dritte Argument` `A` `` `2.0 wird jeweils an übergeben.

Optionales Intervall

Sie können das Zeitintervall angeben, in dem sich die Figur in der Animation ändert (Einheit ist Millisekunde). interval = 100Dann "ändert sich die Zahl einmal alle 100 Millisekunden".

Optionale Rahmen

Geben Sie an, wie oft die Aktualisierungsfunktion aufgerufen werden soll. frames = 132DannupdateDie Funktion wird 132-mal aufgerufen, und die dadurch erzeugte GIF-Animation ist eine Kombination aus 132 Standbildern. (Das erste Argument der `` update``` Funktion, `i```, nimmt in der Zwischenzeit Werte von 0,1, ..., 131 an)

Referenz-URL

Recommended Posts

Flexible Animationserstellung mit Animation.FuncAnimation von matplotlib
Externe Anzeige von Matplotlib-Diagrammen mit tkinter
Erstellung eines negativen / positiven Klassifikators mit BERT
Animation mit matplotlib
Die Basis der Graphentheorie mit Matplotlib-Animation
Animation mit matplotlib
Versuchen Sie es mit matplotlib
[Python] Verwenden der Linien-API [1. Erstellung des Beauty-Bots]
[Python] Zusammenfassung der Methode zur Tabellenerstellung mit DataFrame (Pandas)
Diagrammzeichnung mit matplotlib
Ich habe versucht, Matplotlib zu verwenden
Chat mit Socket erstellen
Beispiel für die Verwendung von Lambda
Installation von matplotlib (Python 3.3.2)
matplotlib Erstellen einer Farbliste
Erstellen Sie sofort ein Diagramm mit 2D-Daten mit der matplotlib von Python
Geben Sie das Ergebnis der Gradientenabstiegsmethode als Matplotlib-Animation aus