Python 实操显示数据图表并固定时间长度

目录
  • 1.非定长的时间轴
  • 2.定长时间轴 实时显示数据

前言:

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)

此时间轴在不断变长。

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 有问题)

s

偶然间看到:

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 显示数据图表内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python 按照固定长度分割字符串的方法小结

    有如下的一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21'. 借助python脚本,可以轻松实现,原理就是:字符串的按照固定长度拆分. 1,文件mac.txt,保存了如下的mac地址: 50E549E32ECB 902B3413EFA6 50E549ECBA1C 902B3457B16F 1C6F65296DF9 902B34131A14 50E549E3E2F8 50E5493A2696 902B345FB021 902

  • python实现字符串加密 生成唯一固定长度字符串

    背景 有时候爬虫爬过的url需要进行指纹核对,比如Scrapy就是进行指纹核对,如果是指纹重复则不再爬取.当然在入库的时候我还是需要做一次核对,否则如果爬虫有漏掉,进入数据库就不合适了. 思路 根据Scrapy的指纹生成方式,这次的指纹生成方式也是用hash的MD5对目标URL进行加密,生成固定长度的字符串,然后在数据库里面将字段设置成unique,这样的话在保证url固定长度的情况下还能够保证入库后的唯一性,进最大努力避免出现重复的数据. 指纹生成代码 新建一个文件,然后在里面编写指纹生成的方

  • Python读取多列数据以及用matplotlib制作图表方法实例

    多列数据的读入以及处理 这次我们用到的数据是煤炭5500周价格的最高价和最低价.左侧为价格的数据表格,右侧为日期. 一.导入数据 这里我们就直接跳过讲解,如有不懂的,详见上一篇博客.见代码. import matplotlib.pyplot as plt import re plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置字体 plt.rcParams['axes.unicode_minus'] = False # 设置正负号 # 导入数据,日期

  • Python数据可视化 pyecharts实现各种统计图表过程详解

    1.pyecharts介绍 Echarts是一款由百度公司开发的开源数据可视化JS库,pyecharts是一款使用python调用echarts生成数据可视化的类库,可实现柱状图,折线图,饼状图,地图等统计图表. 2.柱状图 适用场合是二维数据集(每个数据点包括两个值x和y),但只有一个维度需要比较,用于显示一段时间内的数据变化或显示各项之间的比较情况. 优点: 利用柱子的高度,反映数据的差异,肉眼对高度差异很敏感. 缺点: 只适用中小规模的数据集. 柱状图最基本用法 from pyechart

  • Python读取Excel数据并生成图表过程解析

    一.需求背景 自己一直在做一个周基金定投模拟,每周需要添加一行数据,并生成图表.以前一直是用Excel实现的.但数据行多后,图表大小调整总是不太方便,一般只能通过缩放比例解决. 二.需求实现目标 通过Python程序读取Excel文件中的数据,生成图表,最好将生成图表生成至浏览器页面,后期数据多之后,也能自动缩放,而不会出现显示不全问题. 三.需求实现代码 # 调用本地echarts.min.js 文件 from pyecharts.globals import CurrentConfig Cu

  • Python数据可视化之使用matplotlib绘制简单图表

    目录 一.绘制折线图 二.绘制柱形图或堆积图形 三.绘制条形图或堆积条形图 四.绘制堆积面积图 五.绘制直方图 六.绘制饼图或者圆环图 七.绘制散点图或气泡图 八.绘制箱形图 九.绘制雷达图 十.绘制误差棒图 总结 一.绘制折线图 使用plot()绘制折线图 常用的参数: x:表示x轴的数据 y:表示y轴的数据 fmt:表示快速设置条样式的格式字符串. label:表示应用于图例的标签文本. plot()会返回一个包含Line2D类对象(代表线条)的列表. plot()函数的语法格式: plot

  • Python数据可视化之基于pyecharts实现的地理图表的绘制

    一.例子:百度迁徙 百度地图春节人口迁徙大数据(简称百度迁徙),是百度在2014年春运期间推出的一项技术项目.百度迁徙利用大数据,对其拥有的LBS(基于地理位置的服务)大数据进行计算分析,采用的可视化呈现方式,动态.即时.直观地展现中国春节前后人口大迁徙的轨迹与特征. 网址:https://qianxi.baidu.com/2021/ 二.基础语法介绍 语法 说明 from pyecharts.charts import Geo 导入地图库 Geo() Pyecharts地理图表绘制 .add_

  • python实现对指定字符串补足固定长度倍数截断输出的方法

    简单的小练习,注意考虑全可能就行,下面是实现: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组: •长度不是8整数倍的字符串请在后面补数字0,空字符串不处理. ''' def func_test(): ''' 补足固定长度倍数输出 ''' a=raw_input() b=raw_input() len_a=len(a) len_b=len(b) a_list

  • Python 实操显示数据图表并固定时间长度

    目录 1.非定长的时间轴 2.定长时间轴 实时显示数据 前言: 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)

  • 使用Python串口实时显示数据并绘图的例子

    使用pyserial进行串口传输 一.安装pyserial以及基本用法 在cmd下输入命令pip install pyserial 注:升级pip后会出现 "'E:\Anaconda3\Scripts\pip-script.py' is not present."错误 使用 easy_install pip命令就能解决,换一条重新能执行安装的命令 常用方法: ser = serial.Serial(0) 是打开第一个串口 print ser.portstr 能看到第一个串口的标识,wi

  • python实操练习案例

    目录 任务1.输出图书信息 任务2.输出<红楼梦>中的金陵十二钗前五位 1.变量的赋值 2.列表的方式 3.字典的方式 任务3.输出图书音像勋章 任务4.输出你的身体指标 看到这个先思考,自己怎么输出他?为什么它有颜色?特殊符号去哪找?特殊符号在符号大全找符号大全 http://www.fhdq.net/ 任务1.输出图书信息 book_name='Java程序设计教程' publish='西安电子科技大学出版社' pub_date='2019-02-02' price=56.8 print(

  • python实操案例练习(八)

    目录 任务1.记录用户登录日志 任务2.模拟淘宝客服自动回复 任务1.记录用户登录日志 import time def show_info():     print('输入提示数字,执行相应操作:0退出,1查看登录日志') # 记录日志 def write_logininfo(username):     with open('log.txt','a')as file:        s=f'用户名{username},登录时间:{time.strftime("%Y-%m-%d %H:%M:%S

  • python实操案例练习(七)

    目录 任务1.编写程序实现乐手弹奏乐器 多态 任务2.使用面向对象设计自定义类,描述出租车和家用轿车的信息 任务1.编写程序实现乐手弹奏乐器 多态 class Instrument():     def make_sound(self):         pass class Erhu(Instrument):     def make_sound(self):         print('二胡在演奏') class Pinao(Instrument):     def make_sound(

  • python实操练习案例(六)

    目录 任务1. Mini计算器 任务2. 猜数游戏 任务1. Mini计算器 看出来错误了吗,哈哈哈哈哈哈,那三个点自己加的,本质应该是函数折叠 完整的代码: ef calc(a,b,op):     if op=='+':         return add(a,b)     elif op=='-':         return sub(a,b)     elif op=='*':         return mul(a,b)     elif op=='/':         if

  • python实操练习案例(一)

    目录 任务1.输出图书信息 任务2.输出<红楼梦>中的金陵十二钗前五位 1.变量的赋值 2.列表的方式 3.字典的方式 任务3.输出图书音像勋章 任务4.输出你的身体指标 看到这个先思考,自己怎么输出他?为什么它有颜色?特殊符号去哪找?特殊符号在符号大全找符号大全 http://www.fhdq.net/ 任务1.输出图书信息 book_name='Java程序设计教程' publish='西安电子科技大学出版社' pub_date='2019-02-02' price=56.8 print(

  • Python使用plotly绘制数据图表的方法

    导语:使用 python-plotly 模块来进行压测数据的绘制,并且生成静态 html 页面结果展示. 不少小伙伴在开发过程中都有对模块进行压测的经历,压测结束后大家往往喜欢使用Excel处理压测数据并绘制数据可视化视图,但这样不能很方便的使用web页面进行数据展示.本文将介绍使用python-plotly模块来进行压测数据的绘制,并且生成静态html页面方便结果展示. Plotly简介 Plotly是一款使用JavaScript开发的制图工具,提供了与主流数据分析语言交互的API(如:Pyt

  • python从Oracle读取数据生成图表

    初次学习python,连接Oracle数据库,导出数据到Excel,再从Excel里面读取数据进行绘图,生成png保存出来. 1.涉及到的python模块(模块安装就不进行解释了): import os import cx_Oracle import openpyxl import time import csv import xlrd from matplotlib import pyplot as plt from matplotlib import font_manager 2.连接数据库

  • python函数超时自动退出的实操方法

    本章给大家在项目使用时候,常见的一种情况解决案例,即是当我们调用多个线程,使用了同一个函数去处理数据的时候,有些用函数已经处理完成,但是有些还没有,这就需要我们将任务进行分割,然后当一小部分任务执行后,退出来,另外没有执行的完成超时的就继续去执行,下面就针对遇到这些问题的小伙伴,给大家提供解决参考. 安装timeout-decorator库: pip3 install timeout-decorator 编写异常语句: @timeout_decorator.timeout(5, timeout_

随机推荐