最近在做大数据项目,先做了个数据可视化。

简单来说就是:

利用Echarts + Springboot实现数据可视化

Echarts:调用Echarts.js的API实现图标数据展示  (echarts网址)

https://echarts.apache.org/zh/index.html

Springboot:编写接口访问  (目录结构如下)

pom文件:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.chen.cn</groupId><artifactId>springbootchartview</artifactId><version>1.0-SNAPSHOT</version><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><mysql-connector-java.version>5.1.38</mysql-connector-java.version><druid.version>1.1.6</druid.version></properties><!--继承父工程的starter--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.4.RELEASE</version></parent><dependencies><!--springboot应用支持springmvc功能--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- mysql driver --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql-connector-java.version}</version></dependency><!--数据源连接池--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><!--视图组件:thymeleaf--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.14</version></dependency></dependencies></project>

编写控制层:

package com.chen.cn.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;@Controller
public class EchartsController{@RequestMapping("/doCharts")
//    @ResponseBody  题外话:如果加入此条注解,下面返回的内容就会被加入响应体中,页面显示:chartspublic String doCharts(ModelMap modelMap){return "charts";  //请求转发到charts页面}
}

然后是charts.html:

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><!-- 引入刚刚下载的 ECharts 文件 --><script src="/js/echarts.js"></script></head>
</html>

绘制一个简单的图标:

在绘图前我们需要为 ECharts 准备一个定义了高宽的 DOM 容器。在刚才的例子 </head> 之后,添加:

<body><!-- 为 ECharts 准备一个定义了宽高的 DOM --><div id="main" style="width: 600px;height:400px;"></div>
</body>

最后:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>Title</title><script src="/js/echarts.js"></script>
</head>
<body>
<!-- 为 ECharts 准备一个定义了宽高的 DOM -->
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript" th:inline="javascript">// 基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('main'));// 指定图表的配置项和数据var option = {title: {text: 'ECharts 入门示例'},tooltip: {},legend: {data: ['销量']},xAxis: {data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']},yAxis: {},series: [{name: '销量',type: 'bar',data: [5, 20, 36, 10, 10, 20]}]};// 使用刚指定的配置项和数据显示图表。myChart.setOption(option);</script>
</body>
</html>

其中:

1、'bar' 是图标类型

2、我们可以通过这里修改图表的大小:

编写完成,开始跑程序,点击运行,访问:

http://localhost:8080/doCharts

即可得到可视化图表:

我们更可以修改图表类型,只需修改一个参数即可(type,pie为饼图):

series: [{name: '销量',type: 'pie',data: JSON.parse(data2)}]

运行效果:

当然这里的数据是写死的,那我们肯定要写我们自己的东西呀!!所以怎样?

请往下看:

我们需要改写controller,charts.html这两个地方。

1、在controller中加入以下代码:

package com.chen.cn.controller;import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;import java.util.ArrayList;
import java.util.List;@Controller
public class EchartsController{@RequestMapping("/doCharts")public String doCharts(ModelMap modelMap){//定义商品名称List<String> data1 = new ArrayList<>();data1.add("手机");data1.add("电脑");data1.add("平板");data1.add("耳机");data1.add("电视");data1.add("洗衣机");data1.add("拖孩");List<Integer> data2 = new ArrayList<>();data2.add(2531);data2.add(1231);data2.add(525);data2.add(211);data2.add(913);data2.add(821);data2.add(1121);//把数据转换为JSON格式String data1Json = JSON.toJSONString(data1);String data2Json = JSON.toJSONString(data2);//将数据转发为视图组件显示modelMap.put("data1Json",data1Json);modelMap.put("data2Json",data2Json);return "charts";}
}

其中我们需要:

1、传入一个参数:ModelMap

2、把数据转换为JSON格式,再转发为视图组件

2、charts.html编写:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>Title</title><script src="/js/echarts.js"></script>
</head>
<body>
<!-- 为 ECharts 准备一个定义了宽高的 DOM -->
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript" th:inline="javascript">//在js读取thymeleaf变量值var data1=[[${data1Json}]];var data2=[[${data2Json}]];// 基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('main'));// 指定图表的配置项和数据var option = {title: {text: 'ECharts 入门示例'},tooltip: {},legend: {data: ['销量']},xAxis: {data: JSON.parse(data1)},yAxis: {},series: [{name: '销量',type: 'bar',data: JSON.parse(data2)}]};// 使用刚指定的配置项和数据显示图表。myChart.setOption(option);
</script>
</body>
</html>

其中:我们使用了 JSON.parse() 方法将Json数据转换为 JavaScript 对象。

再次访问:

http://localhost:8080/doCharts

运行结果如下:

emmm就是感觉好方便,利用一个echarts就可以做出来各种可视化图表啦(撒花撒花撒花)~~~

(写得不好,欢迎大佬指教)

利用Echarts+Springboot实现数据可视化 数据可视化 Spring实现简单的数据可视化 自定义可视化图表相关推荐

  1. 用python做一个数据查询软件_Python实现功能简单的数据查询及可视化系统

    欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练.PDF电子文档.面试集锦.学习资料等. image.png 前言 数据时代,数据的多源集成 ...

  2. SpringBoot进击 | 一浅出:Spring Boot简单快速上手书

    为了后继的 Spring Cloud 学习和进阶,我们需要先行了解 Spring Boot. 1.前言 1.1 认识 Spring Boot Spring Boot 是由 Pivotal 团队提供的全 ...

  3. python对excel数据统计_用 python实现简单EXCEL数据统计

    原博文 2016-11-24 23:06 − 任务: 用python时间简单的统计任务-统计男性和女性分别有多少人. 用到的物料:xlrd 它的作用-读取excel表数据 代码: import xlr ...

  4. python数据可视化案例销售数据_3-5 用python进行数据可视化 朝阳医院销售案例

    本篇是3-2-2数据分析文章的扩展版.spoonhead:3-3-2 Python数据分析实战第一步​zhuanlan.zhihu.com 本文在原文章的基础上提出了问题4-问题8的5个新问题,并用m ...

  5. bootstraptable 怎么在特定行添加数据_手把手教你做一个“渣”数据师,用Python代替老情人Excel...

    大数据文摘出品 来源:medium 编译:张大笔茹 十年前,你说你是做数据的,大家的反应就是 -- 用 Excel 做做表. 现在,要成为一个合格的数据分析师,你说你不会 Python,大概率会被江湖 ...

  6. 利用Ajax实现数据的同步传输,从mysql中提取数据,通过echarts可视化

    如何将mysql数据库中的方式通过echarts可视化呢,以下面这个简单的例子向大家进行演示:   步骤一:mysql的创表和插入数据,当然这些数据也可以是你通过爬虫抓取的.     步骤二:   创 ...

  7. 利用ECharts可视化mysql数据库中的数据

    利用ECharts可视化mysql数据库中的数据 技术实现背景 在我们的日常开发中我们经常使用到各种各样的数据进行相关的功能的开发,在这个过程中我们可以用到各种各样的图表来分析和实现我们的需求,很多的 ...

  8. mysql的可视化图表_利用ECharts可视化mysql数据库中的数据

    这是工程所有文件的一个目录 工程文件目录 我做了一个柱状图,一个饼状图,一个折线图,配置过程很恶心,出了好多错,所以在这里记录一下. 如果想直接看 echarts 的部分,可以跳过下面数据库的建立. ...

  9. echarts 大屏可视化_看似复杂炫酷的数据可视化设计,用这波神器轻松搞定!

    数据大屏与数据可视化 数据可视化是目前对数据展示最常用的方式.数据的可视化设计有助于将复杂的数据,用最易理解的方式展示在用户的面前. 数据可视化在中后台的设计中很常见,通常主要用于分析和决策,对实时性 ...

最新文章

  1. 轻松实现QQ用户接入
  2. zabbix之微信告警(python版):微信个人报警,微信企业号告警脚本
  3. python条件语句-Python3 条件控制
  4. 热冗余冷冗余_冗余支架
  5. Linux——Linux下安装tree
  6. MacBook 没有响应的应用程序 CUH
  7. 配置sharepoint的在多个域环境中的kerberos认证
  8. 淘宝商品比价定向爬虫
  9. Android SurfaceView概述
  10. 【FPGA 学习笔记】sof文件和jic文件的区别,程序固化(将sof文件装换位jic文件)
  11. 腾达路由器 远端服务器未响应,腾达路由器设置完成不能上网的解决办法
  12. 浏览器Chrome被hao123劫持亲测最有效方式-(Lin)
  13. 【TS】1307- TypeScript 你还只会用 any?
  14. 华为ESNP,路由器和交换机连接电脑不同网段的解决方法。
  15. 六种常用的文本聚类算法介绍
  16. Validation工具类
  17. 直流电机c语言驱动程序,直流电机的控制C语言程序
  18. 直流稳压稳流开关电源使用说明(LW-6020)
  19. miui android 版本下载安装,MIUI论坛
  20. 用Python画一个喜羊羊的代码

热门文章

  1. vscode 插件开发
  2. 华为中兴表清白!愿向印度政府公布所有源代码
  3. 慧点科技OA系统排名?慧点科技OA办公系统怎么选?什么是用户口碑最好的慧点科技OA系统?
  4. WeTest 基础操作
  5. linux装go环境脚本,Linux Centos7 下安装go 以及脚本一键安装
  6. 红外遥控器快速编码解码(NEC)
  7. 1月浏览器排行:IE10突破1% Chrome连续3月下滑
  8. AndroidO audio系统之AudioPolicyService分析(三)
  9. 今天聊聊系统又崩溃了~~~
  10. NetworkX入门教程