数据可视化大屏的出现,掀起一番又一番的浪潮,众多企业主纷纷想要打造属于自己的“酷炫吊炸天”的霸道总裁大屏驾驶舱。
之前有小伙伴们建议我出一些视频课程来学习Echarts,这样可以更快上手,所以我就追星赶月的录制了《Echarts - 0基础入门课程》,希望对有需要的小伙伴有帮助。
YYDatav的数据可视化大屏《精彩案例汇总》(Java SpringBoot&Echarts源码)_YYDataV的博客-CSDN博客
32【源码】数据可视化:基于Echarts+JavaSpringBoot动态实时大屏-银行监管系统.zip-企业管理文档类资源-CSDN下载





本案例基于16:9 屏宽比,F11全屏显示。
基于免安装可执行程序:支持Windows、Linux、Mac等各种操作系统;将程序复制到服务器上即可,无需其它环境依赖;
观看方式:既可在服务器上直接观看程序界面,也可在远程用浏览器打开播放,例如Chrome浏览器、360浏览器等。
- 前端基于Echarts开源库设计,使用WebStorm编辑器;
- 后端基于Java Web实现,使用 IDEA 编辑器;
- 数据传输格式:JSON;
- 数据源类型:目前采用JSON文件方式,自行添加Mybatis可支持PostgreSQL、MySQL、Oracle、Microsoft SQL Server、SQLite,自行添加POI可支持Excel表格等,还可以定制HTTP API接口方式。
- 数据更新方式:采用http get 轮询方式 。在实际应用中,也可以视情况选择j监测后端数据实时更新,实时推送到前端的方式;
- <div class="grid-container">
- <div id="lo_0">
- <h2>32 数据可视化-银行监管系统</h2>
- </div>
- <div id="lo_1">
-
- </div>
- <div id="lo_2">
-
- </div>
- <div id="lo_3">
-
- </div>
- <div id="lo_4">
-
- </div>
- <div id="lo_5">
-
- </div>
- <div id="lo_6">
-
- </div>
- <div id="lo_7">
-
- </div>
- <div id="lo_8">
- <div style="height: 10%;">
- <button
- onclick="async_echart_china('container_8', 'map_china_map/map_china_map.json', 'confirmAdd')">新增金额</button>
- <button
- onclick="async_echart_china('container_8', 'map_china_map/map_china_map.json', 'confirm')">累计金额</button>
- <button
- onclick="async_echart_china('container_8', 'map_china_map/map_china_map.json', 'nowConfirm')">现有金额</button>
- </div>
- <div id="container_8" style="height: 90%;"></div>
- </div>
- <div id="lo_9">9</div>
- <div id="lo_10">10</div>
- </div>
grid-container 定义
- .grid-container {
- display: grid;
- /* 6列,定义列宽 */
- grid-template-columns: 14% 14.5% 20% 20% 14.5% 14%;
- /* auto: 它用于自动设置行的高度,即取决于行中容器和内容的大小。 */
- grid-template-rows: 10% 25% 30% 30%;
- grid-gap: 10px;
- /* background-color: #2196F3; */
- padding: 0;
- width: 100%;
- height: 100%;
- }
对横跨多个行列的格子定义
- #lo_5 {
- grid-area: 3 / 1 / 4 / 3;
- }
- function init_echart_line_visualMap(container) {
- // 基于准备好的dom,初始化echarts实例
- var myChart = echarts.init(document.getElementById(container), gTheme);
- option = {
- title: {
- text: "股票市值实时监测",
- // top: 0,
- // left: "center",
- textStyle: {
- // color: "#17c0ff",
- fontSize: "12",
- },
- },
-
- tooltip: {
- trigger: "item",
- formatter: "{a} <br/>{b}: {c} ({d}%)",
- position: function (p) {
- //其中p为当前鼠标的位置
- return [p[0] + 10, p[1] - 10];
- },
- },
-
- grid: {
- left: "3%",
- right: "3%",
- bottom: "3%",
- top: "25%",
- containLabel: true,
- },
-
- xAxis: {
- name: "名称",
- type: "category",
- data: [],
- axisLabel: {
- textStyle: {
- color: "rgba(255,255,255,.8)",
- //fontSize: 14,
- },
- // formatter: "{value}%",
- },
- axisLine: {
- lineStyle: {
- color: "rgba(255,255,255,.2)",
- },
- },
- splitLine: {
- lineStyle: {
- color: "rgba(255,255,255,.1)",
- },
- },
- },
- yAxis: {
- name: "亿元",
- type: "value",
- data: [],
- axisLabel: {
- textStyle: {
- color: "rgba(255,255,255,.8)",
- //fontSize: 14,
- },
- formatter: "{value}",
- },
- axisLine: {
- lineStyle: {
- color: "rgba(255,255,255,.2)",
- },
- },
- splitLine: {
- lineStyle: {
- color: "rgba(255,255,255,.1)",
- },
- },
- },
- visualMap: {
- top: "top",
- left: "right",
- textStyle: {
- color: "rgba(255,255,255,.8)",
- //fontSize: 14,
- },
- pieces: [
- {
- gt: 0,
- lte: 100,
- color: "#FF0000",
- },
- {
- gt: 100,
- lte: 800,
- color: "#FFA500",
- },
- {
- gt: 800,
- lte: 900,
- color: "#2E8B57",
- },
- ],
- },
- series: [
- {
- name: "年龄分布",
- type: "line",
- // stack: "total",
- // label: {
- // show: true,
- // },
- // 使用系统函数
- markPoint: {
- label: {
- textStyle: {
- color: "rgba(255,255,255,.8)",
- //fontSize: 14,
- },
- },
- data: [
- { type: "max", name: "Max" },
- { type: "min", name: "Min" },
- ],
- },
- markLine: {
- data: [{ type: "average", name: "Avg" }],
- },
- // 自定义数据
- // markLine: {
- // // 图形是否不响应和触发鼠标事件
- // silent: true,
- // label: {
- // textStyle: {
- // color: "rgba(255,255,255,.8)",
- // //fontSize: 14,
- // },
- // },
- // data: [
- // {
- // yAxis: 100,
- // lineStyle: {
- // color: "#FF0000",
- // },
- // },
- // {
- // yAxis: 800,
- // lineStyle: {
- // color: "#FFA500",
- // },
- // },
- // {
- // yAxis: 900,
- // lineStyle: {
- // color: "#2E8B57",
- // },
- // },
- // ],
- // },
- },
- ],
- };
-
- // 使用刚指定的配置项和数据显示图表。
- myChart.setOption(option);
- window.addEventListener("resize", function () {
- myChart.resize();
- });
- }
-
- function getKeys(dataList) {
- var keys = [];
- var len = dataList.length;
- for (var i = 0; i < len; i++) keys.push(dataList[i].name);
- return keys;
- }
-
支持在每个echarts图表中独立控制定时更新的间隔。
- // 定时1s执行数据更新函数
- setInterval(function () {
- async_echart_bar_horizontal(
- container,
- path_bar_horizontal + "bar_horizontal.json"
- );
- }, 1000);
- @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;
- }
- [
- {
- "name": "10:00",
- "value": 300
- },
- {
- "name": "10:01",
- "value": 301
- },
- {
- "name": "10:02",
- "value": 301
- },
- {
- "name": "10:03",
- "value": 300
- },
- {
- "name": "10:04",
- "value": 300
- },
- {
- "name": "10:05",
- "value": 303
- },
- {
- "name": "10:06",
- "value": 303
- },
- {
- "name": "10:07",
- "value": 303
- }
- ]
数据可视化:基于 Echarts +Java SpringBoot 实现的动态实时大屏【Java开发环境搭建】

YYDatav的数据可视化大屏《精彩案例汇总》(Python&Echarts源码)_YYDataV的博客-CSDN博客
【工厂扫码打印&扫码装箱&错误追溯系统】完整案例详解(Python&PyQt 源码&Mysql数据库)_YYDataV数据可视化的博客-CSDN博客_pyqt案例
本次分享结束,欢迎讨论!QQ微信同号: 6550523