我按照一些教程从连接到Arduino的串行中实时绘制数据。我使用Drawingow模块和matplotlib这样做,并且我应该有一个唯一的绘图,其中数据在每个循环处附加。取而代之的是,我每次都会得到一个新的数字。
我认为这是drawow模块安装的问题,但是在重新安装一切之后,我遇到了同样的问题。我正在使用Windows 10,并且尝试使用python 2和python 3编写代码。我正在Spyder 3中运行代码,这是我得到绘图流的地方。如果我尝试在Jupyter上运行我的代码,它什么也没做
import serial
import matplotlib.pyplot as plt
from drawnow import drawnow
timef = []
tempf = []
set = serial.Serial('COM10', 115200, timeout=1)
plt.ion() #dire que l'on va ploter en live
def liveploting(): # Fonction pour tracer les données / plot data
plt.plot(tempf)
while True : # While loop that loops forever
while (set.inWaiting()==0): #wait until there is data
pass # ne rien faire
arduinoString = set.readline()
dataArray = arduinoString.decode().split(",")
time = float(dataArray[0])
temp = float(dataArray[1])
timef.append(time) # on écrit les données lues par time dans timef / write values to time vector
tempf.append(temp)
drawnow (liveploting,show_once=True)
这就是我得到的: