Построение нескольких значений датчика с использованием drawnow в python

У меня есть 7 датчиков, которые подключены к микроконтроллеру, контроллер отправляет данные на ПК через последовательный порт, я пытаюсь отобразить значения датчиков в режиме реального времени с помощью функции Python Drawnow, кто-нибудь может мне помочь в предоставлении правильного Синтаксис для того же, чтобы построить все датчики на одном рисунке

1 ответ

Как насчет этого для 4 датчиков:

import time
import matplotlib.pyplot as plt
from drawnow import *

sensors = 4
x = dict([(s,[]) for s in range(0,sensors)])   # initialize dictionary of sensor stream values

def makePlot():
    plt.subplot(411)
    plt.plot(x[0],'r')
    plt.subplot(412)
    plt.plot(x[1],'g')
    plt.subplot(413)
    plt.plot(x[2],'b')
    plt.subplot(414)
    plt.plot(x[3],'c')

for i in range(0,100):  # simulate passage of time
    time.sleep(1)  # 1-sec delay for each loop

    for s in range(0,sensors):
        x[s].append(i*s)

    drawnow(makePlot)
Другие вопросы по тегам