Page 135 - 6734
P. 135

Matplotlib – інтерактивна побудова графіків
               В  прикладі  графік  інтерактивно  перебудовується  під  час
           натиску  клавіш  “стрілка  вгору”  і  “стрілка  вниз”.  Для  цього  подія
           key_press_event  пов’язується  з  функцією  обробки  події
           keyPress. Цю програму бажано виконувати так: python.exe main.py

           import matplotlib.pyplot as plt
           from random import randint

           def keyPress(event): # функція обробки подій
               if event.key=='up': # якщо натиснута стрілка
           вгору
                   X.append(randint(0,10)) # додати в список X
           випадкове число
                   Y.append(randint(0,10)) # додати в список Y
           випадкове число
               if event.key=='down': # якщо натиснута стрілка
           вниз
                   if X: X.pop() # вилучити зі списку X останнє
           число
                   if Y: Y.pop() # вилучити зі списку Y останнє
           число
               ln.set_data(X,Y) # установити дані для полілінії
               plt.draw() #ln.figure.canvas.draw() #
           перерисувати

           X=[] # список координат x
           Y=[] # список координат y
           ln,=plt.plot(X, Y, 'k-o') # полілінія
           plt.gcf().canvas.mpl_connect('key_press_event',
           keyPress) # пов'язати подію натиску клавіш із
           функцією обробки подій
           plt.axis([0, 10, 0, 10]) # шкала осей
           plt.xlabel("x");plt.ylabel("y");plt.show()
           print "Рисунок - Інтерактивний графік"
                                         134
   130   131   132   133   134   135   136   137   138   139   140