当前位置: 首页 > 知识库问答 >
问题:

Matplotlib从串行端口实时打印数据

尉迟越
2023-03-14

我是Python的新手,我试图使用Matplotlib从我的PC的串行端口绘制一些数据,这些数据是从外部DVM(数字电压表)获取的,数据格式很简单,如:10.01 9.97 9.95 10.02......我可以使用Matplotlib制作一些静态图形或图表,但我不知道如何在实时模式下绘制数据图表。我只是想看到一个折线图不断更新,x轴是不需要的。我已经通过几个代码(代码中的变量v)获得了串行端口数据。但是现在如何实时绘制它们呢?我应该用什么方法?多谢了。

这是我的密码。

import serial
import time
import matplotlib.pyplot as plt

ser = serial.Serial('/dev/ttyUSB0',115200, timeout=1)
print(ser.name)

count =0
while count < 1000:

ser.write(b'read?\n')
ch = ser.readline()
st = str(ch) 
num = st[3:8]
v = float(num)
print(v)
time.sleep(1)

共有1个答案

汪坚
2023-03-14

我们如何用静态数据绘制数据?

如果我们有静态数据,我们可以直接在math plot lib中绘制折线图

下面是一个简单的代码片段

import matplotlib.pyplot as plt
x = [2, 4, 6]
y = [1, 3, 5]
plt.plot(x, y)
plt.show()

我们如何用动态/实时数据绘制数据?

>

下一步是从服务中获取数据并形成所需的配置、轴,然后将其填充为折线图。

注意:我们还必须考虑数据更新的频率,因此根据它,我们必须触发更新的api。

请阅读以下链接以了解更多信息:https://dzone.com/articles/how-to-use-matplotlib-to-display-api-performance-d

 类似资料:
  • 问题内容: 我有一个Java程序,必须读取Arduino发送的信息。我从这里获取了Java代码。现在,我不太了解它是如何工作的,但是我尝试对其进行修改,并且得到了以下信息: 我创建一个对象串行COM口,我需要在主程序,然后我使用和当我需要它。 效果很好,Arduino获取数据并将其显示在LCD显示屏中。问题是。程序运行时,它会不断从串行端口读取数据(大约每40毫秒一次),但这并不意味着Arduin

  • 问题内容: 我想知道是否有一种方法可以通过PHP读取我的串行端口-可行:-) 在练习Arduino技能时,我开发了一个简单的LED ON / OFF草图。通过在串行监视器中 打开 或 关闭 它可以工作。 下一步,我整理了一个网页,充当GUI界面,以单击链接并执行上面的打开和关闭功能。该基于Web的GUI可通过PHP使用。我正在使用PHP SERIAL 类与Arduino使用的串行端口进行交互。 问

  • 我想知道是否有一种方法可以通过PHP来完成对串行端口的读取——有效:—— 在练习Arduino技能时,我设计了一个简单的LED开关示意图。它通过在串行监视器中输入on或off来工作。 下一步,我把一个网页放在一起,作为一个GUI界面,点击一个链接并执行上面的开关功能。这个基于网络的GUI通过PHP工作。我使用PHP串行类与Arduino使用的串行端口进行交互。 问题是我需要找到一种从串口获取反馈的

  • 我发送字符串从Arduino到PC使用串行通信。消息的格式包括字符、值和空格(分隔数据)。示例消息:。我在Qt中解码这条消息有问题,因为当我使用例如Utf-8解码它时,我将整数转换为字符(以简化的方式),并收到类似的东西:

  • 问题内容: 我对熊猫和matplotlib还不熟悉。无法获取对 绘制模式如下的“DataFrame” 喜欢画三维图形w.r.t.x,y和z 这是我使用的示例代码 I am getting a empty graph plot. definitely missing something. Any pointers? -Thx Request-1: Print df Result of top 10

  • 我做了一个python程序,从串行端口读取gps数据。GPS冰球流NMEA数据语句连续插入USB时。我的程序打开端口,然后尝试读取数据,解析它,然后将其与从Arduino提取的其他数据一起写入文本文件。 我遇到的问题是,当我第一次运行程序时,有时它无法读取数据。我放入了一些Try/Exception捕获,发现以某种方式无法从GPS串行端口读取数据 如果我点击Cntrl-C几次,这似乎可以解决它遇到