2012-06-18 36 views
6

Đó là một câu hỏi khá cơ bản về matplotlib, nhưng tôi không thể tìm ra cách để làm điều đó:matplotlib, từng bước hoạt hình

Tôi muốn âm mưu nhiều số liệu và sử dụng mũi tên trong cửa sổ âm mưu di chuyển từ một đến khác.

cho lúc này tôi chỉ biết làm thế nào để tạo ra mutiple lô và âm mưu chúng trong các cửa sổ khác nhau như thế này:

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

hoặc có nhiều con số trên cùng một cửa sổ bằng âm mưu phụ.

Làm cách nào để tôi có các ô trên cùng một cửa sổ và di chuyển từ ô này sang ô kế tiếp bằng các mũi tên?

Xin cảm ơn trước.

+2

Tôi xin lỗi, nhưng tôi rất bối rối bởi "lô mutliple trên cùng một cửa sổ và di chuyển từ một đến cái tiếp theo với các mũi tên "... Bạn có thể giải thích những gì bạn muốn theo cách khác không? –

+0

@JoeKington Tôi muốn có một biểu đồ thanh hoạt hình tôi sẽ tạo hiệu ứng bằng cách sử dụng các mũi tên (tiếp theo và tiến lên) trong cửa sổ hình. –

Trả lời

10

Để tạo một ô được cập nhật khi bạn bấm phím trái và phải, bạn sẽ cần xử lý các sự kiện bàn phím (tài liệu: http://matplotlib.sourceforge.net/users/event_handling.html).

tôi đã đặt cùng một ví dụ về việc cập nhật một âm mưu, sử dụng giao diện pyplot, khi bạn nhấn mũi tên trái và phải:

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() 
Các vấn đề liên quan