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

article/2025/10/24 4:58:37

数据可视化大屏的出现,掀起一番又一番的浪潮,众多企业纷纷想要打造属于自己的“酷炫吊炸天”的霸道总裁大屏驾驶舱。

之前小伙伴们建议我出一些视频课程来学习Echarts,这样可以更快上手,所以我就追星赶月的录制了《Echarts - 0基础入门课程》 ,希望可以帮到有需要的小伙伴。

传送门

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

2【源码】数据可视化:基于Echarts+JavaSpringBoot实现的动态实时大屏范例-物流大数据-企业管理文档类资源-CSDN下载

效果展示

一、 确定需求方案

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

1920px*1080px,15:9屏宽比,F11全屏后占满整屏且无滚动条。

2、部署方式 

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

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

二、整体架构设计

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

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

1、前端html代码


<div class="loading"><div class="loadbox"><img src="picture/loading.gif"> 页面加载中...</div>
</div>
<div class="head"><h1>案例 - 物流大数据服务平台</h1><div class="weather"><!--<img src="picture/weather.png"><span>多云转小雨</span>--><span id="showTime"></span></div><script>var t = null;t = setTimeout(time, 1000);//开始运行function time() {clearTimeout(t);//清除定时器dt = new Date();var y = dt.getFullYear();var mt = dt.getMonth() + 1;var day = dt.getDate();var h = dt.getHours();//获取时var m = dt.getMinutes();//获取分var s = dt.getSeconds();//获取秒document.getElementById("showTime").innerHTML = y + "年" + mt + "月" + day + "-" + h + "时" + m + "分" + s + "秒";//async_data();t = setTimeout(time, 1000); //设定定时器,循环运行}</script>
</div>
<div class="mainbox"><ul class="clearfix"><li><div class="boxall" style="height: 3.1rem"><div class="main_title"><img alt="" src="img/t_1.png">湖南货物收入</div><div class="allnav" id="echart_1"></div><div class="boxfoot"></div></div><div class="boxall" style="height: 3.15rem"><div class="main_title">湖南省地图<img alt="" src="img/t_2.png"></div><div class="allnav" id="echart_2"></div><div class="boxfoot"></div></div><div class="boxall" style="height: 3.1rem" ><div class="main_title"><img alt="" src="img/t_7.png">湖南省交通</div><div class="main_table t_btn8"><table id="table_1"><thead><tr><th>运营数(辆)</th><th>线路总长度(公里)</th><th>客运总量(万人次)</th><th>日期</th></tr></thead><tbody><tr><td>21059</td><td>26497</td><td>184448</td><td>2018年</td></tr><tr><td>18777</td><td>21140</td><td>188808</td><td>2017年</td></tr><tr><td>15757</td><td>20225</td><td>201143</td><td>2016年</td></tr><tr><td>17458</td><td>19567</td><td>202446</td><td>2015年</td></tr><tr><td>11323</td><td>14562</td><td>279854</td><td>2014年</td></tr></tbody></table></div><div class="boxfoot"></div></div></li><li><div  class="boxall"  style="height: 6.5rem"><div class="main_title">全国地图<img alt="" src="img/t_map.png"></div><div class="map4" id="echart_map" ></div><div class="boxfoot"></div></div><div class="boxall"  style="height: 3.1rem" ><div class="main_title" ><img alt="" src="img/t_7.png">湖南省业务量</div><div class="main_table t_btn8"><table id="table_2"><thead><tr><th>运营数(辆)</th><th>线路总长度(公里)</th><th>客运总量(万人次)</th><th>日期</th></tr></thead><tbody><tr><td>21059</td><td>26497</td><td>184448</td><td>2018年</td></tr><tr><td>18777</td><td>21140</td><td>188808</td><td>2017年</td></tr><tr><td>15757</td><td>20225</td><td>201143</td><td>2016年</td></tr><tr><td>17458</td><td>19567</td><td>202446</td><td>2015年</td></tr><tr><td>11323</td><td>14562</td><td>279854</td><td>2014年</td></tr></tbody></table></div><div class="boxfoot"></div></div></li><li><div class="boxall" style="height:3.1rem"><div class="main_title"><img alt="" src="img/t_4.png">货物周转量</div><div class="allnav" id="echart_3"></div><div class="boxfoot"></div></div><div class="boxall" style="height: 3.15rem"><div class="main_title"> <img alt="" src="img/t_5.png">湖南高速公路</div><div class="allnav" id="echart_4"></div><div class="boxfoot"></div></div><div class="boxall" style="height: 3.1rem"><div class="main_title"><img alt="" src="img/t_6.png">湖南省飞机场</div><div class="allnav" id="echart_5"></div><div class="boxfoot"></div></div></li></ul>
</div>
<div class="back"></div>

2、前端JS代码

    //echart_1湖南货物收入function echart_1() {// 基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('echart_1'));option = {//鼠标缩放和平移roam: true,tooltip: {trigger: 'item',formatter: "{a} <br/>{b} : {c}万元"},legend: {x: 'center',y: '15%',data: ['张家口', '承德', '衡水', '邢台', '邯郸', '保定', '秦皇岛', '石家庄', '唐山'],icon: 'circle',textStyle: {color: '#fff',}},calculable: true,series: [{name: '',type: 'pie',//起始角度,支持范围[0, 360]startAngle: 0,//饼图的半径,数组的第一项是内半径,第二项是外半径radius: [41, 100.75],//支持设置成百分比,设置成百分比时第一项是相对于容器宽度,第二项是相对于容器高度center: ['50%', '40%'],//是否展示成南丁格尔图,通过半径区分数据大小。可选择两种模式:// 'radius' 面积展现数据的百分比,半径展现数据的大小。//  'area' 所有扇区面积相同,仅通过半径展现数据大小roseType: 'area',//是否启用防止标签重叠策略,默认开启,圆环图这个例子中需要强制所有标签放在中心位置,可以将该值设为 false。avoidLabelOverlap: false,label: {normal: {show: true,formatter: '{c}万元'},emphasis: {show: true}},labelLine: {normal: {show: true,length2: 1,},emphasis: {show: true}},data: chart_1_data}]};// 使用刚指定的配置项和数据显示图表。myChart.setOption(option);window.addEventListener("resize", function () {myChart.resize();});}

3、后端Java代码

@RestController
@RequestMapping("/json")
public class Process {@RequestMapping("/{filename}")public String json(@PathVariable("filename") String filename) throws Exception {System.out.println(filename);ChangeJSON(filename);String jsonStr = readJSON(filename);System.out.println(jsonStr);return jsonStr;}

4、数据通信 JSON

[{"value": 285,"name": "张家口","itemStyle": {"normal": {"color": "#f845f1"}}},{"value": 662,"name": "承德","itemStyle": {"normal": {"color": "#ad46f3"}}},{"value": 2826,"name": "衡水","itemStyle": {"normal": {"color": "#5045f6"}}},{"value": 599,"name": "邢台","itemStyle": {"normal": {"color": "#4777f5"}}},{"value": 2502,"name": "邯郸","itemStyle": {"normal": {"color": "#44aff0"}}},{"value": 984,"name": "保定","itemStyle": {"normal": {"color": "#45dbf7"}}},{"value": 582,"name": "秦皇岛","itemStyle": {"normal": {"color": "#f6d54a"}}},{"value": 2324,"name": "石家庄","itemStyle": {"normal": {"color": "#f69846"}}},{"value": 2060,"name": "唐山","itemStyle": {"normal": {"color": "#ff4343"}}},{"value": 893,"name": "","itemStyle": {"normal": {"color": "transparent"}},"label": {"show": false},"labelLine": {"show": false}}
]

四、开发配置&代码结构说明

数据可视化:基于 Echarts +Java SpringBoot 实现的动态实时大屏【Java开发环境搭建】

五、更多资源 


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

《工厂订单出入库信息管理系统》完整案例详解(含演示网址账号)(Go&Vue源码)_YYDataV的博客-CSDN博客

本次分享结束,欢迎讨论!QQ微信同号: 6550523


http://chatgpt.dhexx.cn/article/8PVKOS7E.shtml

相关文章

客快物流大数据项目(九十一):ClickHouse的数据库引擎

​​​​​​​ 文章目录 ClickHouse的数据库引擎 一、MySQL引擎 ClickHouse的数据库引擎 ClickHouse提供了本机、M

客快物流大数据项目(九十二):ClickHouse的MergeTree系列引擎介绍和MergeTree深入了解

文章目录 ClickHouse的MergeTree系列引擎介绍和MergeTree深入了解 一、MergeTree系列引擎介绍

客快物流大数据项目(三十二):安装CDH-6.2.1和初始化CDH服务所需的MySQL库

安装CDH-6.2.1和初始化CDH服务所需的MySQL库 一、安装CDH-6.2.1 yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server 二、初始化CDH服务所需的MySQL库 在MySQL中依次创建监控数据库、Hive数据库、Hue数据库 操作步骤 说明 1

大数据实时+离线项目架构----智慧物流大数据平台(超流行框架!)

智慧物流大数据平台 文章目录 智慧物流大数据平台一、项目背景二、逻辑架构三、解决方案技术亮点: 数据流转四、项目的技术选型4.1流式处理平台4.2 分布式计算平台4.3 海量数据存储 框架软件版本 一、项目背景 本项目基于一家大型物流公司研发的智慧物流大数据平台。该物流公司…

visio中不使用带箭头的线条

在visio中每次都需要用带箭头的连接线&#xff0c;但有时候&#xff0c;确需要不用带箭头的连接线&#xff0c;找了好半天&#xff0c;每次使用每次找&#xff0c;这次特此写博客结论一下。 2.设置线条的格式

visio画箭头时,如何去掉箭头的自动连接连接点(吸附)功能?

1.以Visio2013版为例&#xff0c;在visio顶部操作菜单中&#xff0c;视图-视觉帮助-找到右下小箭头。 2.点击小箭头&#xff0c;在如下弹出框中&#xff0c;取消如下两项的勾选&#xff0c;即可。

如何用Visio画出总线(空心的箭头)

在visio中可以首先画出一个空白的箭头&#xff0c;在下图中找到。 画出一个箭头 然后可以在这个箭头后面拼接长方体&#xff0c;如图 然后&#xff0c;选择开发工具中的操作的联合 得到的效果如下 这样&#xff0c;就画出了总线。

如何用viso画波浪线、以及带箭头的波浪线。

如何用viso画波浪线、带箭头的波浪线&#xff01;&#xff01;&#xff01; 搜索过来搜索过去&#xff0c;还是没有找到一个令自己满意的答案&#xff0c;就自己写一个过程了。 首先我使用的是visio 2013版本。方法一&#xff1a; 打开visio&#xff0c;新建一个基本框图找到…

visio指向插图任意位置和任意改变箭头形状

开发环境&#xff1a; win7&#xff0c;visio 2016 proffessional 问题1 最近在用visio作图时发现用箭头连接两个插图时只能连接到插图上指定位置的点。如下图所示&#xff1a; 比如我想画一条上图中手画的箭头&#xff0c;就没办法连接&#xff0c;只能是连接长方形的上边中…

visio图多树枝直角加箭头 避免箭头过多

集美们&#xff0c;visio图遇到一个指向多个的箭头&#xff0c;利用“连接线”不方便&#xff08;①箭头容易对不齐&#xff1b;②箭头会躲避文本框&#xff0c;不容易控制&#xff09;&#xff0c;就需要使用多树枝直角形状。 连接符的调用位置 ↑ 里面就有多树枝直角工具了 …

VISIO取消箭头自动吸附及粘连

Visio打开或取消箭头的自动吸附和自动连接 在用Visio画图时Visio的自动对齐、自动连接、自动吸附功能确实能带了很多便利。但在画连接线时&#xff0c;Visio总是自动连接箭头与图形的固定节点&#xff0c;想要微调一下连接位置&#xff0c;就显得很不方便&#xff0c;需要关闭…

visio如何使箭头指向图中的任意位置

visio如何使箭头指向图中的任意位置 会疯真的会被visio搞疯&#xff0c;因为没有系统的学过visio&#xff0c;就是哪里有问题然后去搜大佬博客。 在画流程图的时候&#xff0c;【判断】或【循环】的反馈线的标准画法是反馈指向【流程线】&#xff0c;而不是某一模块。 解决方…

300集ps视频从零基础入门到精通

目前来说&#xff0c;PS是一项很基本的工作技能了。并且Photoshop一直都被纳入大学计算机等级考试中&#xff0c;photoshop已经像Word&#xff0c;Excel&#xff0c;PPT那么普及了。相信同学们在写简历的时候也会写上去。 其实&#xff0c;Photoshop目前也是全球最流行、使用最…

Redis从入门到精通

Redis简介 什么是实时系统: 瞬时可以实现某些数据的统计或者是功能的实现 *_Redis由来: *_什么是redis? 由C语言实现的直接操作内存的开源的高性能的数据库软件 *_redis应用场景 缓存&#xff08;数据查询&#xff0c;短连接&#xff0c;新闻内容、商品内容等等&#xf…

TCP协议从入门到精通

文章目录 TCP协议TCP头部信息TCP头部信息清单16位端口号&#xff08;port number&#xff09;32位序号&#xff08;sequence number&#xff09;32位确认号&#xff08;acknowledgement number&#xff09;4位头部长度&#xff08;header length&#xff09;6位标志位16位窗口大…

PHP从入门到精通

【原】PHP从入门到精通2小时【图文并茂】 主要内容&#xff1a; 搭建PHP开发环境第一个helloworld程序变量全局变量循环结构函数数组面向对象编程继承接口多态日志文件的读写时间格式和时区创建图形从远程获取图形生成二维码php与数据库mysql的连接mysql数据库面向对象编程coo…

Rust 从入门到精通10-所有权

在介绍rust 所有权时&#xff0c;我们先介绍内存管理的一些基础概念。 1、堆和栈 一个进程在执行的时候&#xff0c;它所占用的内存虚拟空间一般被分割为好几个区域&#xff0c;我们称为”段“&#xff08;Segment&#xff09;。常见的几个段如下&#xff1a; ①、代码段&am…

Elasticsearch从入门到精通

1、Elasticsearch简介 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎&#xff0c;无论在开源还是专有领域&#xff0c;Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。 但是&#xff0c;Lucene只是一个库。想要发挥其强大的作用&#xff0…

Scala 从入门到精通

Scala 从入门到精通 scala风格与java风格 public class JavaDemo01 {public static void main(String[] args) {System.out.println("我爱你中国");} }object ScalaDemo01 {def main(args: Array[String]): Unit {println("我爱你中国")} }javac JavaDe…