为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Tkinter 和 Matplotlib 配置实时图表轴

使用 Tkinter 和 Matplotlib 配置实时图表轴

holdtom 2023-01-04 16:03:37
我目前正在尝试使用 Tkinter 和 Matplotlib 在窗口上创建实时图形。此图表中的数据不断附加到 CSV 文件中,并像以下示例行一样保存:06/09/2020 19:57:53,4,2.549,3.546第二列是第二列,第 3 列和第 4 列是我试图绘制的电压数据随时间的变化。我有一个单独的 python 脚本不断附加到这个 CSV,所以它非常大并且有很多数据点。因此,一段时间后我的图表变得非常混乱(见下图),我想将数据限制为最近 60 秒的点,并让 x 轴的刻度间隔更大,而不是在每个数据点。我还想稍微缩小图表,这样噪声看起来就不那么明显了(例如,从 0 到 5 V)。我尝试添加 plot1.xlim(t-60, t), plot2.xlim(t-60, t), plot1.ylim(0,5), plot2.ylim(0,5) 但这些都没有将限制设置为我想了。它只是放大了图表中一个非常奇怪的部分,垂直切掉了大部分图表。我应该如何配置我的图,使 y 轴从 0 变为 5,x 轴显示最近 60 秒的数据?我是 Tkinter 的新手,非常感谢任何帮助。谢谢!!!我的屏幕图片轴真的很乱:
查看完整描述

1 回答

?
POPMUISE

TA贡献1765条经验 获得超5个赞

默认情况下,读取 CSV 文件将为您提供字符串。要修复您的代码,您必须将数据作为浮点数传递,如下所示:


    tList = []

    vList = []

    v1List = []

    for eachLine in dataList:

        if len(eachLine) >1:

            timedate, t, voltage, voltage1 = eachLine.split(',')

            tList.append(float(t))

            vList.append(float(voltage))

            v1List.append(float(voltage1))


查看完整回答
反对 回复 2023-01-04
  • 1 回答
  • 0 关注
  • 183 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号