效果图展示

1.动态实时更新数据效果图

说明: 其中 今日抓拍,抓拍总数,预警信息统计,监控点位统计图表 做了动态实时更新处理

2.静态切片效果图

一、确定需求方案

1、确定产品上线部署的屏幕LED分辨率

本案例基于16:9 屏宽比,F11全屏显示。

2、部署方式 

基于免安装可执行程序:支持Windows、Linux、Mac等各种操作系统;将程序复制到服务器上即可,无需其它环境依赖;

观看方式:既可在服务器上直接观看程序界面,也可在远程用浏览器打开播放,例如Chrome浏览器、360浏览器等。

二、整体架构设计

  1. 前端基于Echarts开源库设计,使用WebStorm编辑器;
  2. 后端基于Python Flask实现,使用 Vscode 编辑器;
  3. 数据传输格式:JSON;
  4. 数据源类型:目前采用JSON文件方式,可自行添加支持PostgreSQL、MySQL、Oracle、Microsoft SQL Server、SQLite,自行添加pandas支持Excel表格等,还可以定制HTTP API接口方式。
  5. 数据更新方式:采用http get 轮询方式 。在实际应用中,也可以视情况选择j监测后端数据实时更新,实时推送到前端的方式;

三、编码实现 (关键代码)

1、前端html代码 - 页面布局主要基于div


<body><div class="body"><div class="head-box"><div class="logout-box"></div><div class="link-box"></div>南方软件视频平台大屏中心<div class="time-box" id="time">2022年9月1日</div></div><div class="main"><!--left--><div class="col"><!--巡查视频问题--><div class="col-box1"><div class="col-title">巡查视频问题</div><div class="col-main"><ul class="xcspwt-box js-xcspwt"><li><span>张三丰</span><span title="南京信息工程大学地铁站1号出口监控点">南京信息工程大学地铁站1号出口监控点</span><span title="视频信号不稳定">视频信号不稳定</span></li>.......</ul></div></div><!--巡查视频问题统计--><div class="col-box1"><div class="col-title">巡查视频问题统计</div><div class="col-main"><!--视频问题统计--><ul class="spwtzgtj-box"><li><span>问题总数</span><span>234</span></li><li><span>已整改</span><span>34</span></li><li><span>未整改</span><span>200</span></li></ul><div class="spwttj-echarts" id="spwttjEchart"></div></div></div></div><!--center--><div class="col"><!--预警信息推送--><div class="col-box1"><ul class="zpsl-box"><li><span>今日抓拍</span><span id="today_snap">1245条</span></li><li><span>抓拍总数</span><span id="total_snap">3421条</span></li></ul><div class="col-title">预警信息推送</div><div class="col-main js-tjxxtsxq" style="height: calc(100% - 190px);margin-top: 10px"><div class="yjxxts-box"><img src="img/12.png"></div><div class="yjxxts-box"><img src="img/12.png"></div><div class="yjxxts-box"><img src="img/12.png"></div></div></div><!--预警信息统计--><div class="col-box1"><div class="col-title">预警信息统计</div><div class="col-main "><ul class="yjxxtj-title js-tab"><li class="on">有人统计</li><li>无人统计</li></ul><div class="yjxxtj-box"><ul class="wgxc-box js-wgxcBox"><li><div class="wgxc-bar"><span id="wgxc_span1" class="wgxc-sl-bar"style="height:10%"></span></div><div class="wgxcName">南京</div></li>......</ul></div></div></div></div><!--right--><div class="col"><!--全市监控点位统计--><div class="col-box1"><div class="col-title">全市监控点位统计</div><div class="col-main"><div class="qsjk-box" id="qsjkdwEcharts"><!--全市监控点位--></div></div></div><!--系统公告&资源下载--><div class="col-box1"><div class="col-title"><ul class="xtggzlxz-box js-tab js-xtggzlxz"><li class="on">资源下载</li><li>系统公告</li></ul></div><div class="col-main" style=" height:calc(100% - 75px);padding:20px 0;overflow: hidden">......</div></div></div><!--预警信息推送弹框--><div class="yjxxts-tkbox js-yjxxtsTkbox"><img src="img/12.png"><div class="yjxxts-xqbox"><div class="col-title">详情</div><div class="yjxxts-xqmain"><table><tr><td>监控点位</td><td>地铁站</td></tr><tr><td>预警时间</td><td>2018-10-21</td></tr><tr><td>预警类型</td><td>无人在岗</td></tr><tr><td>预警状态</td><td>已处理</td></tr></table></div></div></div></div></div>
</body>

2. 前端JS - echarts图表

/**全市监控点位统计**/var loadqsjkdw = function () {var myCharts = echarts.init(document.getElementById('qsjkdwEcharts'));var option = {grid: {left: '5px',right: '0%',bottom: '18%',top:'10%',},tooltip: {show: "true",trigger: 'axis',axisPointer: { // 坐标轴指示器,坐标轴触发有效type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'},formatter:'{b0}:{c0}'},yAxis: {show:false,splitLine: {show: false,lineStyle:{color:'#353E47'}},axisTick: {show: false},axisLine: {show: true,lineStyle:{color:'#353E47'}},axisLabel: {textStyle: {color: '#ffffff'},formatter:function(value,index){var r = '';if(value>100000000){//亿r = (value/100000000).toFixed(1) + '亿';}else if(value>10000){//万r = (value/10000).toFixed(1) + '万';}else{r = value;}return r;}}},xAxis: [{type: 'category',axisTick: {show: false},axisLine: {show: true,lineStyle: {color: '#353E47',}},axisLabel:{textStyle:{color:'#fff'},interval:0},data: ["南京","苏州","无锡","常州","南通","徐州","淮安","镇江","泰州"]}],series: [{name: '',type: 'bar',barWidth:'20px',itemStyle: {normal: {show: true,color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{offset: 0,color: '#00d891'}, {offset: 1,color: '#00579a'}]),barBorderRadius: 50,borderWidth: 0,borderColor: '#333',}},label: {normal: {show: true,position: 'top',textStyle: {color: '#fff'}}},data:qsjkdw,}]};myCharts.clear();myCharts.setOption(option);myCharts.on("click",function(e){loadsqjkdw();});};

3. 前端JS - 数据定时更新控制

支持在每个echarts图表中独立控制定时更新的间隔。

 var init = function () {updateEcharts();setInterval(function() {updateEcharts()},2000);//刷新周期设置xcwttj();loadqsjkdw();;};

4. 后端 Python Flask 代码

# -*- coding:utf-8 -*-import io
import os
import sys
import time
import urllib
import random
import json
from flask import Flask, redirect
# 导入线程模块
import threadingapp = Flask(__name__, static_folder="static", template_folder="template")@app.route('/')
def index():return redirect('/static/index.html')@app.route('/get_snap')
def get_snap():jsonData = {}jsonData['today_snap'] = random.randint(1, 100)jsonData['total_snap'] = random.randint(1, 1000)return json.dumps(jsonData)@app.route('/qsjkdw')
def qsjkdw():jsonData = []for x in range(9):jsonData.append({"value": str(random.randint(1, 100))})return json.dumps(jsonData)@app.route('/get_yjxxtj')
def get_yjxxtj():jsonData = []for x in range(6):jsonData.append(random.randint(1, 100))return json.dumps(jsonData)def loop():time.sleep(10)pass# 主程序在这里
if __name__ == "__main__":# 开启线程,触发动态数据a = threading.Thread(target=loop)a.start()# 开启 flask 服务app.run(host='127.0.0.1', port=80, debug=True)

四、运行效果

五、更多案例

YYDatav的数据可视化大屏《精彩案例汇总》(Python&Echarts源码)_YYDataV的博客-CSDN博客

【工厂扫码打印&扫码装箱&错误追溯系统】完整案例详解(Python&PyQt 源码&Mysql数据库)_YYDataV数据可视化的博客-CSDN博客_pyqt案例

感谢开源分享的前端代码。

34【源码】数据可视化:基于 Echarts + Python 动态实时大屏 - 视频平台相关推荐

  1. 数据可视化软件进阶版--BI大屏

    BI大屏是什么 商业智能(Business Intelligence,简称:BI),又称商业智慧或商务智能,指用现代数据仓库技术.线上分析处理技术.数据挖掘和数据展现技术进行数据分析以实现商业价值. ...

  2. 【19】数据可视化+爬虫:基于 Echarts + Python 实现的动态实时大屏范例 - bilibili排行榜

    目录 ❤️效果展示❤️ 1.首先看动态效果图 2.丰富的主题样式 一. 确定需求方案 1.确定产品上线部署的屏幕LED分辨率 2.部署方式 二.整体架构设计 三.爬虫采集关键编码实现 1.确定爬虫目标 ...

  3. 33【源码】数据可视化:基于 Echarts + Python Flask 动态实时大屏 - 制造业生产管理看板

    效果展示 1.动态实时更新数据效果图 2.鼠标右键切换主题 一.确定需求方案 1. 屏幕分辨率 这个案例的分辨率是16:9,最常用的的宽屏比. 根据电脑分辨率屏幕自适应显示,F11全屏查看: 2. 部 ...

  4. 27【源码】数据可视化大屏:基于 Echarts + Python Flask 实现的32-9超宽大屏范例 - 监控指挥中心

    目录 效果展示 1. 效果动图 2. 多种主题效果 一. 确定需求方案 1. 屏幕分辨率 2. 部署方式 二. 整体架构设计 三. 编码实现 (基于篇幅及可读性考虑,此处展示部分关键代码) 1. 前端 ...

  5. 3【源码】数据可视化:基于 Echarts +Java SpringBoot 实现的动态实时大屏范例-物联网

    数据可视化大屏的出现,掀起一番又一番的浪潮,众多企业主纷纷想要打造属于自己的"酷炫吊炸天"的霸道总裁大屏驾驶舱. 之前有小伙伴们建议我出一些视频课程来学习Echarts,这样可以更 ...

  6. 12【源码】数据可视化:基于 Echarts +Java SpringBoot 实现的动态实时大屏范例 - 供应链

    数据可视化大屏的出现,掀起一番又一番的浪潮,众多企业主纷纷想要打造属于自己的"酷炫吊炸天"的霸道总裁大屏驾驶舱. 之前有小伙伴们建议我出一些视频课程来学习Echarts,这样可以更 ...

  7. 2【源码】数据可视化:基于 Echarts + Java SpringBoot 实现的动态实时大屏范例-物流大数据

    数据可视化大屏的出现,掀起一番又一番的浪潮,众多企业纷纷想要打造属于自己的"酷炫吊炸天"的霸道总裁大屏驾驶舱. 之前小伙伴们建议我出一些视频课程来学习Echarts,这样可以更快上 ...

  8. 1【源码】数据可视化:基于 Echarts +Java SpringBoot 实现的动态实时大屏范例-互联网企业数据分析

    目录 效果展示 1.首先看动态效果图 2.再看实时分片数据图 一. 需求确认 1.确定产品上线部署的屏幕LED分辨率 2.功能模块 3.部署方式 二.整体架构设计 三.开发环境搭建 1.Java开发环 ...

  9. 【2】数据可视化:基于 Echarts + Python 实现的动态实时大屏 - 物流大数据

    目录 精彩案例汇总 效果展示 一. 确定需求方案 1.确定产品上线部署的屏幕LED分辨率 2.功能模块 3.部署方式 二.整体架构设计 三.编码实现 (基于篇幅及可读性考虑,此处展示部分关键代码) 1 ...

最新文章

  1. NYOJ 79 拦截导弹
  2. 漫谈数据库索引 | 脚印 footprint(转载)
  3. 设计模式-行为型模式-命令模式
  4. 64如何传入后台_如何保证API接口数据安全?
  5. php imagemagick 翻译目录
  6. linux sd卡 测试软件,怎么检测SD卡内存卡是否被扩容过?
  7. 什么是自然语言处理,自然语言处理的技术优势和应用领域
  8. 解决win7 sp1专业版无法安装更新
  9. 单片机加减法C语言,单片机的加减法原理
  10. source insight使用2---设置全选为Ctrl+a
  11. java jnlp 运行_JNLP文件如何能成功安装运行?
  12. 【自动化运维新手村】Flask-ORM关联查询
  13. 去水印软件哪个好_去水印工具
  14. 王者荣耀中的技术,技能冷却原来是这样做的
  15. oracle中笛卡尔积怎么用,Oracle的表连接方法(四)笛卡尔积
  16. 哥去微软面试,第一句话就被…
  17. 修改app绕过模拟器检测_雷电模拟器(增强版)
  18. C sort 排序函数用法
  19. ENDNOTE使用方法(转发)
  20. 不用u盘如何在小米电视上安装电视直播软件

热门文章

  1. lol服务器什么时候维护,lol等短时间维护是什么?lol11月23日服务器维护详情介绍...
  2. 京东商品发布实现店铺商品批量上新,节省大量人力
  3. Swagger UI 与 Spring Boot 的集成
  4. 基于html5鼠标悬停图片动画展示效果
  5. 房贷利息怎么算, 千万别被砖家叫兽误导
  6. 简易小学生四则运算练习软件(自动出题判题)-java实现
  7. Flutter移动电商实战 --(14)首页_拨打电话操作
  8. android 地铁地图api,入门指南-地铁图 JS API | 高德地图API
  9. winform 窗体无法显示报错“未声明或从未赋值“解决办法
  10. QT——2.3简易记事本的实现:练习QFile、QFileDialog、QTextStream、QFontDialog、QColorDialog、QDateTime等类的应用