[PYTHON] Erstellen Sie eine Animation mit matplotlib

matplotlib ist ein Diagrammzeichnungsmodul von Python, und Sie können auch Animationen erstellen. Mit anderen Worten, es ist eine gute Idee, dass die älteren Brüder, die sterben, wenn sie die Animation nicht um Mitternacht sehen, Matplotlib lernen.

Schreiben Sie also als sehr einfaches Beispiel Code, der nur die von numpy generierten Zufallszahlen beschreibt.

Klicken Sie hier für das offizielle Dokument. http://matplotlib.org/api/animation_api.html

ArtistAnimation

Es gibt zwei Arten von Matplotlib-Animationen: ArtistAnimation und FuncAnimation. ArtistAnimation bereitet alle Grafiken im Voraus in Form eines Arrays vor und spielt sie einzeln ab.

artistanimation.py


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

fig = plt.figure()

ims = []

for i in range(10):
        rand = np.random.randn(100)     #Generiere 100 Zufallszahlen
        im = plt.plot(rand)             #Zufallszahlen grafisch darstellen
        ims.append(im)                  #Fügen Sie dem Array ims ein Diagramm hinzu

#Zeigen Sie alle 100 ms 10 Diagramme an
ani = animation.ArtistAnimation(fig, ims, interval=100)
plt.show()

artist.gif

Es war wie eine Radiowelle. Wenn Sie einen Anime sehen möchten, nachdem Sie spät abends gearbeitet haben, ist es eine gute Idee, sich so etwas anzuschauen. Beim Speichern eines Videos als GIF am Ende

plt.show()

Teil von

ani.save("output.gif", writer="imagemagick")

Es ist gut, umzuschreiben. (Benötigt ein Paket namens imagemagick) Es scheint, dass es MP4 ausgeben kann, aber ich habe es nicht getan, weil es ein wenig mühsam ist.

FuncAnimation

Dadurch wird das vorgefertigte Diagramm nicht übergeben, sondern die Funktion für jeden Frame der Animation ausgeführt. Nützlich, wenn die Daten zu groß oder möglicherweise endlos sind.

funcanimation.py


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

fig = plt.figure()

def plot(data):
    plt.cla()                      #Löschen Sie das aktuell gezeichnete Diagramm
    rand = np.random.randn(100)    #Generiere 100 Zufallszahlen
    im = plt.plot(rand)            #Diagramm generieren

ani = animation.FuncAnimation(fig, plot, interval=100)
plt.show()

func.gif

Da dies dynamisch ein Diagramm erstellt, ändert sich der Bereich auf der vertikalen Achse jedes Mal entsprechend der Zufallszahl.

Bei der Ausgabe in GIF wird im Gegensatz zu Artist Animation das Ende nicht angegeben

ani = animation.FuncAnimation(fig, plot, interval=100, frames=10)
ani.save("output.gif", writer="imagemagick")

Geben Sie die Anzahl der Frames im Voraus als "Frames = 10" an.

Recommended Posts

Erstellen Sie eine Animation mit matplotlib
Animieren Sie mehrere Diagramme mit matplotlib
Japanisch mit Matplotlib
Animation mit matplotlib
Histogramm mit Matplotlib
2-Achsen-Plot mit Matplotlib
Heatmap von Python + matplotlib
Banddiagramm mit Matplotlib
Lernen Sie mit Chemo Informatics Matplotlib
Echtzeitzeichnung mit Matplotlib
3D-Plot mit Matplotlib
Stellen Sie die Achsen mit matplotlib ein
Zeichnen Sie Excel-Daten mit matplotlib (1)
Versuchen Sie es mit matplotlib mit PyCharm
Zeichnen Sie Excel-Daten mit matplotlib (2)
Stapelbares Barplot mit Matplotlib
Wählen Sie mit matplotlib abgestufte Farben aus
Erstellen Sie eine Plotanimation mit Python + Matplotlib
Python-Grafikhandbuch mit Matplotlib.
Inferenz- und Ergebnisanzeige mit Tensorflow + matplotlib
Japanisieren Sie Matplotlib mit Alpine mit Docker
Zeichne Japanisch mit matplotlib auf Ubuntu
Zeichnen Sie mit matplotlib ein loses Diagramm
Vielseitige Datenerfassung mit Pandas + Matplotlib
Animieren Sie mehrere Standbilder mit Python
Heatmap mit Dendrogramm in Python + Matplotlib
Einfache japanische Schrifteinstellung mit matplotlib
Zeichnen Sie einfach Diagramme mit matplotlib
Kontinuierliche Farbe mit Matplotlib-Streudiagramm
Zeichne Riapnov Fractal mit Python, matplotlib
Wenn matplotlib nicht mit python2.7 funktioniert
Führen Sie mit Python, matplotlib, einen logarithmischen Normalwahrscheinlichkeitsplot durch
Einfache Animation mit matplotlib (mp4, gif)
Schreiben Sie ein gestapeltes Histogramm mit matplotlib
Implementieren Sie "Data Visualization Design # 2" mit matplotlib
Matplotlib Memorandum
Wie man mit matplotlib mehrere Figuren betitelt
[Python] Legen Sie den Diagrammbereich mit matplotlib fest
Passen Sie den Abstand zwischen den Figuren mit Matplotlib an
Richten Sie die Größe der Farbleiste an der Matplotlib aus
Matplotlib Galerie
Versuchen Sie, mit matplotlib eine Normalverteilung zu zeichnen
Matplotlib-Memo
Machen Sie mit matplotlib eine teilweise gezoomte Figur
Schreiben Sie SVG-Diagramme mit Matplotlib mit Heroku
Japanisches Diagramm mit VS Code + matplotlib anzeigen
Heat Map für die Rastersuche mit Matplotlib
Stellen Sie die Farbe der xticklabels individuell mit matplotlib ein
Zeichnen Sie eine hierarchische Achsenbeschriftung mit matplotlib + pandas
[Python] Lassen Sie uns matplotlib mit Japanisch kompatibel machen
Zeigen Sie Markierungen über dem Rand mit matplotlib an
Richten Sie die Farbleiste mit matplotlib an der Figur aus
[Jupyter Notebook Memo] Kanji mit Matplotlib anzeigen
Zeichnen Sie mit matplotlib ein schönes Kreisdiagramm
Nehmen Sie allgemeine Einstellungen mit der Unterzeichnung von matplotlib vor
Erstellen Sie ein Diagramm mit Rändern, die mit matplotlib entfernt wurden
Zusammenfassung der Grammatik, die bei matplotlib oft vergessen wird
Visualisieren Sie Korona-Infektionsdaten in Tokio mit matplotlib
Zeichnen Sie eine flache Oberfläche mit einem Matplotlib-3D-Diagramm
Pandas-Grundlagen für Anfänger ③ Erstellen Sie ein Histogramm mit matplotlib