Живое обновление сюжета отстает
Я пытаюсь отобразить эталонные и выходные значения, которые отображаются на последовательном мониторе Arduino в формате (ref, out), и проблема в том, что мой график занимает некоторое время для обновления значений, поэтому я получаю отставание в моем python plot.my код выглядит следующим образом
import serial
import numpy
from matplotlib import pyplot as plt
from drawnow import *
s=serial.Serial('COM3',9600)
ref=[]
out=[]
plt.ion()
cnt=0
def makeFig():
plt.ylim(0,1023)
plt.title('PI Controller')
plt.grid(True)
plt.ylabel('reference')
plt.plot(ref,'ro-',label=' ref values')
plt.legend(loc='upper left')
plt2=plt.twinx()
plt.ylim(0,1023)
plt2.plot(out,'b^-',label='out values')
plt2.set_ylabel('out values')
plt2.ticklabel_format(useOffset=False)
plt2.legend(loc='upper right')
while True:
while(s.inWaiting()==0):
pass
dataString=s.readline()
dataArray=dataString.split(',')
r=float(dataArray[0])
o=float(dataArray[1])
ref.append(r)
out.append(o)
drawnow(makeFig)
plt.pause(.000001)
cnt=cnt+1
if (cnt>50):
ref.pop(0)
out.pop(0)
Мой сюжет обновляется, но он запаздывает. Пожалуйста, помогите мне с этим...