Grundlegende Animationen mit Matplotlib

Ich möchte ein kurzes Beispiel geben, wie Sie plotbasierte Animationen mit Matplotlib in Python erstellen können. Der folgende Python-Code implementiert eine einfache exponentielle Wachstumsanimation. Die Dokumentation wird in Form von Kommentaren direkt zum Code hinzugefügt.

# jupyter notebook so einstellen, dass Animation angezeigt wird 
%matplotlib notebook 

# relevante Module & Pakete 
importieren import numpy as np 
import matplotlib .pyplot as plt 
from matplotlib .animation import FuncAnimation 

# x- und y-Koordinatendatenlisten erstellen 
x = [] 
y = [] 

# set matplotlib figure size 
plt.figure(figsize=(5,5)) 

# Subplot-Figuren- und Achsen-Handler erstellen 
fig, ax = plt.subplots() 

# Achsengrenzen setzen, für x- und y-Achse 
ax.set_xlim(0,100) 
ax.set_ylim (0,1.1**100) 

# setze Achsenbeschriftungen  
ax.set_xlabel("time",
              Schriftgröße = 14)
ax.set_ylabel("Beobachtungswert", 
              fontsize = 14) 

# setze Titel 
ax.set_title("Animation des exponentiellen Wachstums mit Matplotlib ", 
            fontsize = 14 ) # erzeuge eine Linienplot 

-Referenz; 
# gleichzeitig Linienfarbe etc. setzen 
line, = ax.plot(0,0, 
                color='red', 
                linestyle='-', linewidth 
                =2, 
                markersize=2) 

# Definiere eine Animationsfunktion 
def frameAnimation(i ): 
    # x- und y-Werte 
    setzen x.append(i) 
    y.append(1.10**i) 
    # Liniendiagramm aktualisieren 
    # Linienobjekt zurückgeben 
    .
    line.set_ydata(y) 
    return line, 

# Animationsobjekt erstellen 
animation = FuncAnimation(fig, # die Figur der Animation zuweisen zu 
                          func = frameAnimation, # die Frame-Rendering-Funktion 
                          frames = np.arange(0,100,0.1), # die Schritte und Anzahl der Frames 
                         Intervall = 10) # Umkehrungen ist die Zeit pro Frame, in ms 

# Animation 
anzeigen plt.show()

You May Also Like

Leave a Reply

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.