import sys
import serial
import numpy as np
import matplotlib.pyplot as plt
from collections import deque
port = "COM11"
baud = 9600
timeout=1
ser = serial.Serial()
ser.port = port
ser.baudrate = baud
ser.timeout = timeout
a1 = deque([0.0]*100)
#ax = plt.axes(xlim=(0, 100), ylim=(0, 1000))
line, = plt.plot(a1)
plt.ion()
plt.ylim([0,1000])
try:
ser.open()
except:
sys.stderr.write("Error opening serial port %s\n" % (ser.portstr) )
sys.exit(1)
#ser.setRtsCts(0)
while 1:
# Read from serial port, blocking
data = ser.read(1)
# If there is more than 1 byte, read the rest
n = ser.inWaiting()
data = data + ser.read(n)
#sys.stdout.write(data)
print(a1)
a1.appendleft((data))
datatoplot = a1.pop()
line.set_ydata(a1)
plt.draw()
我正在获取情节但是每当我点击绘图窗口说要将窗口移动到屏幕上的不同位置时情节就会卡住它说在绘图窗口上没有响应。每当我使用实时时我都会遇到这个问题绘图,如果我只是传递一个数组和情节然后我没有得到这个问题。请告诉我代码是否有问题或其他一些问题,如低处理能力,虽然我在我的系统上使用32GB RAM。 谢谢