2012-06-18 4 views
6

Это довольно простой вопрос о Matplotlib, но я не могу понять, как это сделать:Matplotlib, шаг за шагом анимации

Я хочу построить несколько фигур и использовать стрелку в окне сюжета, чтобы перейти от одного до другой.

на данный момент я просто знаю, как создать Mutiple участки и построить их в разных окнах, как это:

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() 

или наличие нескольких фигур на одном окне, используя сюжетные.

Как я могу использовать mutliple plot в одном окне и переходить от одного к другому со стрелками?

Заранее спасибо.

+2

Мне очень жаль, но я очень смущен «mutliple участков в том же окне и перейти от одного к следующему со стрелками "... Можете ли вы объяснить, что вы хотите по-другому? –

+0

@JoeKington Я хотел бы иметь анимированную гистограмму, которую я мог бы оживить, используя стрелки (далее и вперед) в окне фигуры. –

ответ

10

Чтобы создать сюжет, который обновляется при нажатии левой и правой клавиш, вам необходимо будет обрабатывать события клавиатуры (docs: http://matplotlib.sourceforge.net/users/event_handling.html).

Я поставил вместе пример обновления участка, используя интерфейс pyplot, при нажатии стрелки влево и вправо:

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() 
Смежные вопросы