本文介绍: Python领域中要可视化数据,离不开Pyecharts。但如果可视化的数据是实时的,在不借用其它的诸如flask echarts等,如何仅仅只用pycharts本身和浏览器的辅助,达到实时可视化的效果呢?注意:chrome的扩展可能需要科学上网。
Python领域中要可视化数据,离不开Pyecharts。但如果可视化的数据是实时的,在不借用其它的诸如flask echarts等,如何仅仅只用pycharts本身和浏览器的辅助,达到实时可视化的效果呢?
- 首先,要解决的是如果实时的产生数据,这里面要借用到python自带的time和threading 的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进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。