Вот минимальный рабочий пример моего кода.Живой график с использованием matplotlib без hault
Я пытаюсь построить живой график, используя matplotlib, принимая некоторые входы от пользователя через gui. Для построения gui я использовал библиотеку easygui
Однако есть одна проблема: Граф останавливается, делая обновление от пользователя, и я хочу, чтобы он продолжался. Есть что-то, чего я здесь не хватает.
#!/usr/bin/env python
from easygui import *
from matplotlib.pylab import *
import numpy
import random
n = 0
fig=plt.figure()
x=list()
y=list()
plt.title("live-plot generation")
plt.xlabel('Time(s)')
plt.ylabel('Power(mw)')
plt.ion()
plt.show()
calculated=[random.random() for a in range(40)]
recorded=[random.random() for a in range(40)]
possible=[random.random() for a in range(5)]
plt.axis([0,40,0,10000])
for a in range(0, len(recorded)):
temp_y= recorded[a]
x.append(a)
y.append(temp_y)
plt.scatter(a,temp_y)
plt.draw()
msg = "Change"
title = "knob"
choices = possible
if a>9:
b = (a/10) - numpy.fix(a/10)
if b==0:
choice = choicebox(msg, title, choices)
print "change:", choice
здесь ссылка скачать easygui
sudo python setup.py install
на основе вашей версии Linux или ОС. использовать следующие link
'http://stackoverflow.com/questions/8835374/python-displaying-a-message-box-that-can-be-closed-in- the-code-no-user-interve' Благодаря этому вопросу. Моя проблема решена. – pistal