2012-06-18 19 views
6

Es ist eine ziemlich grundlegende Frage auf matplotlib, aber ich kann nicht herausfinden, wie es zu tun:matplotlib, Schritt für Schritt Animation

ich mehrere Figuren und verwenden Sie den Pfeil in den Plot-Fenstern zu bewegen, von einem plotten will Ein weiterer.

einstweilen ich nur wissen, wie mutiple Plots erstellen und sie in verschiedenen Fenstern wie dieses Grundstück:

import matplotlib.pyplot as plt 

fig = plt.figure() 
plt.figure(1) 
n= plt.bar([1,2,3,4],[1,2,3,4]) 
plt.figure(2) 
n= plt.bar([1,2,3,4],[-1,-2,-3,-4]) 
plt.show() 

oder mehrere Figuren auf dem gleichen Fenster mit subplot verwenden.

Wie kann ich mehrere Plots auf dem gleichen Fenster haben und von einem zum nächsten mit den Pfeilen wechseln?

Vielen Dank im Voraus.

+2

Es tut mir leid, aber ich bin sehr verwirrt durch „mutliple Plots auf demselben Fenster und bewege dich mit den Pfeilen von einem zum nächsten. "... Kannst du auf eine andere Art erklären, was du willst? –

+0

@JoeKington Ich hätte gerne ein animiertes Balkendiagramm, das ich mit den Pfeilen (vorwärts und vorwärts) im Figurenfenster animieren würde. –

Antwort

10

Um ein Diagramm zu erstellen, das aktualisiert wird, wenn Sie die linke und rechte Taste drücken, müssen Sie Tastaturereignisse behandeln (Dok: http://matplotlib.sourceforge.net/users/event_handling.html).

ich haben zusammen ein Beispiel ein Diagramm der Aktualisierung, die pyplot Schnittstelle verwenden, wenn Sie die Pfeile links und rechts drücken:

import matplotlib.pyplot as plt 
import numpy as np 


data = np.linspace(1, 100) 
power = 0 
plt.plot(data**power) 


def on_keyboard(event): 
    global power 
    if event.key == 'right': 
     power += 1 
    elif event.key == 'left': 
     power -= 1 

    plt.clf() 
    plt.plot(data**power) 
    plt.draw() 

plt.gcf().canvas.mpl_connect('key_press_event', on_keyboard) 

plt.show() 
Verwandte Themen