Я пытаюсь создать простое приложение, в котором
изображение помещается в каталог (внешним процессом)
Срабатывает Python Watchdog, и изображение обрабатывается функцией, а результаты отображаются в окне
Задание работает непрерывно, и функция обработки запускается, когда изображение попадает в каталог. Окно графика результатов должно быть обновлено новыми результатами вместо закрытия окна, а затем повторного построения графика.
Приведенный ниже код не отображает результаты. Окно графика остается пустым, а затем вылетает. Если что-то, кроме matplotlib, может легко выполнить эту работу, то это тоже будет хорошо.
# plt is matplotlib.pyplot
def process_and_plot(test_file):
y, x = getresults(test_file) # function which returns results on image file
y_pos = range(len(y))
plt.figure(num=1,figsize=(20,10))
plt.bar(y_pos, y, align='center')
plt.xticks(y_pos, x)
plt.show()
# to trigger the proess_and_plt function when a new file comes in directory
class ExampleHandler(FileSystemEventHandler):
def on_created(self, event):
print event.src_path
process_and_plot(event.src_path)
event_handler = ExampleHandler()
observer.schedule(event_handler, path='path/to/directory')
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()