Ich habe ein NxN-Gitter mit einigen Werten, die sich bei jedem Zeitschritt ändern. Ich habe eine Möglichkeit gefunden, eine einzelne Grid-Konfiguration mit matshow
function zu plotten, aber ich weiß nicht, wie ich den Status mit jedem Zeitschritt aktualisiere. Hier ist ein einfaches Beispiel:
Dieser Code erzeugt das folgende Bild:
Stellen Sie sich nun vor, dass sich beim nächsten Mal einige Werte ändern, also sollte dieses Bild. Das ist die Logik, die ich im Sinn hatte:
Dies erzeugt 10 Bilder. Ich möchte das animieren, anstatt einzelne Bilder zu erzeugen, und zum Beispiel möchte ich einen Zeitschritt zwischen den Änderungen wählen (d. H. Bildrate).
Ich bin auch offen für Vorschläge für eine andere Funktion, wenn matshow
nicht der richtige Weg ist, aber bitte halte es einfach, ich bin relativ unerfahren.
matplotlib 1.1 hat ein Animationsmodul (sehen Sie sich die Beispiele an).
Mit animation.FuncAnimation
können Sie Ihr Diagramm wie folgt aktualisieren:
Sie können die Animation speichern mit:
%Vor%Ich speichere es mit
%Vor%Die Bilder bleiben erhalten und Sie können ein animiertes gif wie das folgende mit
erstellen %Vor%
Der einfachste Weg ist wahrscheinlich, dass matplotlib einzelne Bilder speichert und dann ein anderes Programm oder eine Bibliothek zu einer Animation zusammenfügt. Dieser Ansatz verwendet ein Modul namens write2gif , aber Sie können auch mencoder verwenden. ffmpeg oder jede andere Software, die Videos produzieren kann:
%Vor%Hier ist ein Beispiel, wie es aus der Benutzeroberfläche von pylab heraus funktioniert. Es funktioniert nicht so gut, da das kontinuierliche Rendering im selben Thread wie pylabs gui handlers läuft:
%Vor%Tags und Links python matplotlib numpy