Catia动态图:串口数据动态图太滞后(data plot)

我正在从串行端口(传感器数据,y)读取,并希望将其与时间(x)进行比较。我使用系统时间来计算经过的时间。来自传感器的读数没有滞后。但是我绘制它的方式会引入几秒钟的滞后,因此它落后于传感器的实际状态(因此不能作为实时数据接受)。请帮助我学习如何在此处更好地绘制 x,y 数据。提前感谢!

import serial
import time
import matplotlib.pyplot as plt
start = time.time()
x = []
y = []
ser = serial.Serial('COM6', 2000000, timeout=0)
time.sleep(2)
fig = plt.figure()
plt.ion()  # turn on interactive mode
fig.canvas.draw()
plt.show(block=False)
while True:
    line = ser.readline() # read a byte
    if line:
        string = line.decode() # convert the byte string to a unicode string
        #num = re.findall(r"[-+]?\d*\.\d+|\d+", string)
        num = float(string)
        end = time.time()
        y.append(num)
        time_elapsed= end - start
        x.append(time_elapsed)
        plt.cla()
        plt.plot(x, y, 'red')
        plt.pause(0.05) 
        plt.draw()
0

我对 pyserial 也有同样的问题。这是ser.readline缓慢。请尝试使用ser.read(ser.in_waiting)。以前的延迟大约是 20s,现在下降到 & lt;2s。Here是上一个问题的答案,以供参考

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(26)
小程序view垂直居中:垂直居中的标题页(center cover page vertically)
上一篇
五菱宏光c:如何在C中定义宏的宏(c define macro)
下一篇

相关推荐

  • A ion ch s:Matplotlib的“交互模式”(ion() ioff())的确切语义

    关于A ion ch s的问题,在matplotlib mode中经常遇到,Matplotlib 的 pyplot 中的“交互模式”的文档如下:…

    2024-02-18 03:20:23
    0 43 32
  • Pycharm导入文件:Pycharm-导入Matplotlib

    关于Pycharm导入文件的问题,在backend tkagg is interactive backend. turning interactive mo中经常遇到,我已经安装了 Pycharm 并使用 Anaconda 3 作为我的解释器。我无法导入 Matplotlib (或 Seaborn)。当我运行 'import matplotlib.pyplot as plt' 时,我得到以下内容:-…

    2022-11-23 08:39:34
    0 58 58
  • comeandgetyourlove音乐爱就在你身边

    Come and Get Your Love是一首热门的歌曲,由美国摇滚乐队Redbone演唱。这首歌曲于1974年发行,被收录在他们的专辑《Wovoka》中。歌曲以放克曲风为主,旋律活泼,曲调悠扬,歌词朗朗上口,深受歌迷喜爱。…

    2023-06-29 07:47:31
    0 29 83
  • css预编译器: center;}

    CSS预编译器是一种用于构建CSS的工具,它可以将CSS代码转换为更易于管理和维护的格式。它们可以使CSS代码更加灵活,更易于重用,并且可以帮助开发人员更轻松地组织和管理CSS代码。…

    2023-04-30 05:19:08
    0 32 83
  • python中predict函数参数:如何使用Python的predict函数进行机器学习预测

    示例示例predict函数是scikit-learn中的一个函数,用于预测新样本的输出结果。参数:…

    2023-03-30 08:03:12
    0 76 97
  • codeblocks无法编译运行:Codeblocks无法编译运行的解决方案

    codeblocks无法编译运行的原因可能有很多,下面以一段简单的C语言代码为例,来说明codeblocks无法编译运行的情况。…

    2023-07-11 08:01:55
    0 20 59
  • gitlab ci 自动化部署:使用 Gitlab CI 自动化部署提升开发效率

    GitLab CI 自动化部署是一种基于 GitLab CI/CD 的自动化部署方案,可以实现快速、可靠的部署流程。它将代码提交、构建、测试、部署等步骤集成在一起,使得开发者可以更加轻松地完成部署工作。下面是一个示例 .gitlab-ci.yml 文件,可以帮助你实现 GitLab CI 自动化部署:…

    2023-05-20 05:45:38
    0 27 15
  • xl和xe汽车cvt:探索XL和XE汽车的CVT技术优势

    XL和XE汽车CVT是一种变速器,它使用液力变矩器代替传统的机械变速器,以达到更高的效率。它的工作原理是,当发动机输出功率时,液力变矩器就会将这些功率转换为液压能量,然后将能量传递到变速器的输出轴上,从而实现变速。…

    2023-05-16 07:36:03
    0 47 20

发表评论

登录 后才能评论

评论列表(41条)