Animiertes Liniendiagramm

MatplotlibMatplotlibBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Tutorial wird Ihnen der Prozess des Erstellens eines animierten Liniendiagramms mit der Python-Matplotlib-Bibliothek gezeigt. Das Liniendiagramm wird eine Sinuswelle mit einer sich ändernden Amplitude über die Zeit anzeigen.

Tipps für die VM

Nachdem der VM-Start abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.

Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.

Wenn Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.

Bibliotheken importieren

Der erste Schritt besteht darin, die erforderlichen Bibliotheken zu importieren. Wir werden Matplotlib verwenden, um das Diagramm zu erstellen, und NumPy, um Daten zu generieren.

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

Figur und Achsen initialisieren

Als nächstes müssen wir die Figur und die Achsen für das Diagramm initialisieren. Dies kann mit der Funktion subplots() aus Matplotlib erreicht werden.

fig, ax = plt.subplots()

Daten generieren

In diesem Schritt werden wir die Daten für das Liniendiagramm generieren. Wir werden die NumPy-Funktion arange() verwenden, um ein Array von Werten für die x-Achse zu generieren, und die sin()-Funktion, um ein Array von y-Achsenwerten für eine Sinuswelle zu generieren.

x = np.arange(0, 2*np.pi, 0.01)
line, = ax.plot(x, np.sin(x))

Die Animationsfunktion definieren

Die Animationsfunktion wird von der Funktion FuncAnimation() aufgerufen und wird verwendet, um das Diagramm mit neuen Daten zu aktualisieren. In diesem Beispiel werden wir die y-Achsenwerte des Liniendiagramms mit einer Sinuswelle aktualisieren, die über die Zeit eine sich ändernde Amplitude hat.

def animate(i):
    line.set_ydata(np.sin(x + i / 50))  ## update the data.
    return line,

Das Animationsobjekt erstellen

Jetzt können wir das Animationsobjekt mit der Funktion FuncAnimation() erstellen. Wir werden das Figurobjekt, die Animationsfunktion, das Aktualisierungsintervall und die Anzahl der zu speichernden Frames übergeben.

ani = animation.FuncAnimation(
    fig, animate, interval=20, blit=True, save_count=50)

Das Diagramm anzeigen

Schließlich können wir das Diagramm mit der Funktion show() aus Matplotlib anzeigen.

plt.show()

Zusammenfassung

In diesem Tutorial haben wir gelernt, wie man mit der Python-Bibliothek Matplotlib ein animiertes Liniendiagramm erstellt. Wir haben die Figur und die Achsen initialisiert, Daten generiert, die Animationsfunktion definiert und das Animationsobjekt erstellt. Anschließend haben wir das Diagramm mit der Funktion show() angezeigt.