怎么用Python显示数据图表并固定时间长度

发布时间:2022-08-25 11:42:32 作者:iii
来源:亿速云 阅读:139

这篇文章主要介绍了怎么用Python显示数据图表并固定时间长度的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Python显示数据图表并固定时间长度文章都会有所收获,下面我们一起来看看吧。

前言:

python利用matplotlib库中的plt.ion()函数实现即时数据动态显示:

1.非定长的时间轴

代码示例:

# -*- coding: utf-8 -*-
 
import matplotlib.pyplot as plt
import numpy as np
import time
from math import *
 
plt.ion() #开启interactive mode 成功的关键函数
plt.figure(1)
t = [0]
t_now = 0
m = [sin(t_now)]
 
for i in range(100):
    plt.clf() #清空画布上的所有内容
    t_now = i*0.3
    t.append(t_now)#模拟数据增量流入,保存历史数据
    m.append(sin(t_now))#模拟数据增量流入,保存历史数据
    plt.plot(t,m,'-r')
    plt.draw()#注意此函数需要调用
    plt.pause(0.1)

怎么用Python显示数据图表并固定时间长度

此时间轴在不断变长。 

2.定长时间轴 实时显示数据

使用队列  deque,保持数据是定长的,就可以显示固定长度时间轴的动态显示图,

代码示例:

import matplotlib.pyplot as plt
from collections import deque
from math import *
plt.ion()#启动实时
pData = deque(maxlen=30)
for i in range(30):
    pData.append(0)
fig = plt.figure()
t = deque(maxlen=30)
for i in range(30):
 
    t.append(0)
plt.title('Real-time Potentiometer reading')
(l1,)= plt.plot(pData)
plt.ylim([0, 1])
for i in range(2000):
        plt.pause(0.1)#暂停的时间
        t.append(i)
        pData.append(sin(i*0.3))
        print(pData)
        plt.plot(t,pData,'-r') 
 
        plt.draw()

Spyder  运行结果(貌似在pycharm 有问题)

怎么用Python显示数据图表并固定时间长度

偶然间看到:

import numpy as np
import matplotlib.pyplot as plt
 
from IPython import display
import math
import time

fig=plt.figure()
ax=fig.add_subplot(1,1,1)
ax.set_xlabel('Time')
ax.set_ylabel('cos(t)')
ax.set_title('')
 
line = None
plt.grid(True) #添加网格
plt.ion()  #interactive mode on
obsX = []
obsY = []
 
t0 = time.time()
while True:
    t = time.time()-t0
    obsX.append(t)
    obsY.append(math.cos(2*math.pi*1*t))
 
    if line is None:
        line = ax.plot(obsX,obsY,'-g',marker='*')[0]
 
    line.set_xdata(obsX)
    line.set_ydata(obsY)
 
    ax.set_xlim([t-10,t+1])
    ax.set_ylim([-1,1])
    plt.pause(0.01)

怎么用Python显示数据图表并固定时间长度

关于“怎么用Python显示数据图表并固定时间长度”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么用Python显示数据图表并固定时间长度”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. 获取当前时间并显示的方法
  2. Python怎么实现bilibili时间长度查询

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:php数组如何遍历替换某一字段的值

下一篇:Mybatis怎么直接执行SQL语句

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》