本文介绍: Python领域中要可视化数据,离不开Pyecharts。但如果可视化数据实时的,在不借用其它的诸如flask echarts等,如何仅仅只用pycharts本身和浏览器辅助,达到实时可视化效果呢?注意:chrome扩展可能需要科学上网

Python领域中要可视化数据,离不开Pyecharts。但如果可视化数据是实时的,在不借用其它的诸如flask   echarts等,如何仅仅只用pycharts本身和浏览器辅助,达到实时可视化的效果呢?

  1. 首先,要解决的是如果实时的产生数据,这里面要借用到python自带timethreading 的Timer
  2. 然后显示器如何实时刷新这里用到chrome浏览器的auto Refresh  page 这个扩展

注意:

chrome扩展可能需要科学上网

方法有二两种

目录

方法有二两种

方法一将执行代码封装成函数,并且以时间传参,使用time

方法二 用Timer

借用chrome 的Auto Refresh Page


 

 方法一
执行代码封装函数,并且以时间传参使用time


···
## 以下是一个使用pyecharts库并每隔5分钟刷新样例:
···
import time
from pyecharts import options as opts
from pyecharts.charts import Line
from pyecharts.faker import Faker

# 创建一个简单折线图
line = Line()
line.add_xaxis(Faker.choose())
line.add_yaxis("销售额", Faker.values())

# 设置页面样式
page = (
    line
    .set_global_opts(title_opts=opts.TitleOpts(title="每隔5分钟刷新的折线图", subtitle="使用pyecharts"))
    .render("index.html")  # 生成html页面
)

# 每5分钟刷新一次
while True:
    line = Line()
    line.add_xaxis(Faker.choose())
    line.add_yaxis("销售额", Faker.values())
    line.render("index.html")  # 更新html页面
    time.sleep(300)  # 睡眠5分钟

```
这个程序创建一个简单的折线图,并且使用while循环每隔5分钟更新一次。要使用这个程序,请替换Faker.choose()和Faker.values()的占位符数据。此外,确保您的主程序中已经安装了pyecharts库。

注意:由于本程序每隔5分钟就要更新一次,因此请确保您的机器能够时间运行,并且不会出现任何故障失效。
```

方法二 用Timer

from pyecharts.charts import Line
from pyecharts import options as opts
from datetime import datetime
from threading import Timer

# 创建一个线性对象
line_chart = Line()

# 设置图表基本参数
line_chart.set_global_opts(
    title_opts=opts.TitleOpts(title="每隔5分钟刷新图表"),
    xaxis_opts=opts.AxisOpts(type_="time", name="时间"),
    yaxis_opts=opts.AxisOpts(name="数据")
)

# 定义数据更新函数
def update_data():
    # 获取当前时间格式化
    now = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    # 生成模拟数据
    data = [(now, i) for i in range(5)]
    # 添加数据图表
    line_chart.add_xaxis([d[0] for d in data])
    line_chart.add_yaxis("", [d[1] for d in data])
    # 清空之前的数据
    line_chart.render_notebook()
    line_chart.clear()

# 定义每隔5分钟执行次数更新函数定时器
def repeat_update_data():
    update_data()
    # 间隔5分钟(300秒)后再次执行
    t = Timer(300, repeat_update_data)
    t.start()

# 开始执行定时器
repeat_update_data()

样例创建一个线性图表对象,并使用set_global_opts()方法设置基本参数。接着定义一个数据更新函数update_data(),其作用生成模拟数据并添加到图表中,并且在每次更新数据后清空之前的数据。然后定义一个定时器函数repeat_update_data(),其作用是每隔5分钟执行一次数据更新函数最后调用repeat_update_data()函数开始执行定时器可以在该样例中根据实际需要修改图表参数和数据生成方式

借用chrome 的Auto Refresh Page

生成的是静态页面,前面的方法只是让html文件定时刷新,此时还需要浏览器也定时刷新,才能将改变的数据显示出来

 chrome 商店安装 Auto Refresh Page 扩展程序

同步时间前面的方法一和方法二的时间间隔一致

完工

原文地址:https://blog.csdn.net/weixin_50409347/article/details/130105666

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_36702.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注