Matplotlib: Animation

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
microkernel
User
Beiträge: 271
Registriert: Mittwoch 10. Juni 2009, 17:27
Wohnort: Frankfurt
Kontaktdaten:

Moin! :)

Ich visualisiere zur Zeit ein zweidimensionales Array als Map mithilfe von matplotlib. Dazu nutze ich folgende Funktion:

Code: Alles auswählen

def visualize(zvals, title="Map overview", show=True):
    # make a color map of fixed colors
    cmap = mpl.colors.ListedColormap(['#3DB2E6','#6ABD45',"#EE1F25", "white"])
    bounds= [-1, 1, 2, 3, 4]
    norm = mpl.colors.BoundaryNorm(bounds, cmap.N)
    pyplot.grid(True, color="white")
    # tell imshow about color map so that only set colors are used
    img = pyplot.imshow(zvals,interpolation='nearest',
                        cmap = cmap,norm=norm)
    pyplot.title(title)
    if show:
        pyplot.show()
        
    return img
Das Array besteht aus Zahlen zwischen 0 und 3 und kann verschiedene Größen annehmen. Das Output sieht in etwa so aus:
https://www.dropbox.com/s/ykhqhi0v9bdrh1e/map.png.
Nun würde ich gerne verschiedene Simulationen mit dem Array durchführen, in denen sich die Werte stetig ändern. Um die Veränderungen besser verfolgen zu können würde ich gerne das ganze animieren. Ich habe bereits versucht das ganze mit FuncAnimate zu realisieren, wobei das ganze Array mit jeder Iteration einfach komplett mit Zufallszahlen überschrieben hatte. Leider ist mein Matplotlib verständnis ist einfach zu gering und das ganze endete nur in Frustration. Kann mir jemand zeigen, wie ich solche Animationen schreibe?


Liebe Grüße
microkernel
Antworten