首页 > 其他分享 >Spring Boot 2.x基础教程:使用 ECharts 绘制各种华丽的数据图表

Spring Boot 2.x基础教程:使用 ECharts 绘制各种华丽的数据图表

时间:2022-09-02 15:11:35浏览次数:88  
标签:index Spring Boot 图表 可视化 基础教程 ECharts

通常,这类需求在客户端应用中不太会用到,但是在后端的各种统计分析模块会经常碰到。比如:通过折线图、柱状图、雷达图等可视化形式,更直观的展现和分析经营状况或系统运行情况。这里我们将引入的数据可视化组件库 ECharts来帮助我们完成这样的任务。

ECharts简介

ECharts是百度开源的一个前端组件。它是一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表。

它提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

除了已经内置的包含了丰富功能的图表,ECharts 还提供了自定义系列,只需要传入一个renderItem函数,就可以从数据映射到任何你想要的图形,更棒的是这些都还能和已有的交互组件结合使用而不需要操心其它事情。

你可以在下载界面下载包含所有图表的构建文件,如果只是需要其中一两个图表,又嫌包含所有图表的构建文件太大,也可以在在线构建中选择需要的图表类型后自定义构建。

动手试一试

第一步:创建一个基础Spring Boot应用,或者拿上一节的工程chapter4-1(仓库地址见文末)来进行加工。

第二步:在pom.xml中引入Web应用需要的web模块和模板引擎thymeleaf模块,比如用Thymeleaf的时候:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

第三步:编写一个Controller,将/路径的请求,映射到index.html页面

@Controller
public class HelloController {

@GetMapping("/")
public String index(ModelMap map) {
return "index";
}

}

第四步:在resources/templates目录下创建index.html页面,具体内容如下:

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8" />
<title>Spring Boot中使用ECharts</title>
<script src="https://cdn.bootcss.com/echarts/4.6.0/echarts.min.js"></script>
</head>
<body>
<div id="main" style="width: 1000px;height:400px;"></div>
</body>

<script type="text/javascript">
// 初始化ECharts组件到id为main的元素上
let myChart = echarts.init(document.getElementById('main'));
// 定义图标的配置项
let option = {
title: {
text: 'Spring Boot中使用ECharts'
},
tooltip: {},
// x轴配置
xAxis: {
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
// y轴配置
yAxis: {},
series: [{
// 数据集(也可以从后端的Controller中传入)
data: [820, 932, 901, 934, 1290, 1330, 1320],
// 图表类型,这里使用line,为折线图
type: 'line'
}]
};
myChart.setOption(option);
</script>
</html>

在页面内容中主要包含三部分:

  • <head>中通过<script>标签引入ECharts的组件JS,这里使用了bootcss的免费公共cdn。如果用于自己生产环境,不建议使用这类免费CDN的JS或者CSS等静态资源。可以从官网下载所需的静态内容,放到Spring Boot的静态资源位置(如果不知道在哪,可见上一篇),或是放到自己公司的静态资源管理的服务器上,实现动静分离。
  • <body>中定义了一个id为main的<div>标签,这个标签后续将用来渲染EChart组件
  • 最后的一段<script>内容则是具体的EChart图标的展现初始化和配置。具体配置内容可见代码中的注释信息。

第五步:启动应用,访问localhost:8080,如果上面操作均无差错,那我们就会得到类似下面的折线图:

关于ECharts图表的调试,官方还提供了一个在线工具,有兴趣的读者可以点击这里尝试一下。

标签:index,Spring,Boot,图表,可视化,基础教程,ECharts
From: https://www.cnblogs.com/jieran/p/16649995.html

相关文章

  • Spring(二)——IOC
    Spring(二)——IOC概念1.什么是IOC控制反转,把对象创建和对象之间的调用过程,交给Spring进行管理目的:降低耦合度2.IOC底层原理xml解析、工厂模式、反射IOC接......
  • [Spring框架]spring新注解配置、spring整合JUnit5
    1.spring新注解配置1.@Configuration作用:配置类,等同于bean.xml文件获取容器时需要使用AnnotationApplicationContext(有@Configuration注解的类.class)属性:value:指定配......
  • 为什么我要迁移SpringBoot到函数计算
    前言为什么要迁移?我们的业务有很多对外提供服务的RESTfulAPI,并且要执行很多不同的任务,例如同步连锁ERP中的商品信息到美团/饿了么等平台,在线开发票等。由于各种API......
  • 基于函数计算自定义运行时快速部署一个 springboot 项目 什么是函数计算?
    什么是函数计算?函数计算是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地可靠地运行任......
  • SpringCloud Alibaba 打包后在启动从Nacos读取配置文件失败
     SpringCloudAlibaba引用Nacos配置中心,读取数据源配置,在调试运行都正常,但是打包后在启动运行则会报错,提示读取配置失败巴拉巴拉。执行运行命令java-jar-Dserver.por......
  • vue+Springboot下载文件
    前端代码<el-buttontype="primary"@click="dowload2('1662023440868上传测试.jpg')">下载</el-button>js代码dowload2(msg){lethref="http://......
  • SpringBoot整合Redis
    14、SpringBoot整合Redis14.1、概述SpringBoot操作数据库:spring-data,jpa,jdbc,mongodb,redisSpringData也是和SpringBoot齐名的项目!说明:在SpringBoot2.x之后,原来使用的jed......
  • springboot项目使用jsp
    异常问题场景提示:这里简述项目相关背景springboot课堂学习问题详情提示:这里描述项目中遇到的问题jsp无法访问原因分析提示:这里填写问题的分析没有jsp解......
  • SpringCloud 使用 OpenFeign 声明式服务调用
    Feign组件最初由Netflix公司提供,由于不支持SpringMVC注解,所以SpringCloud对其封装并进行支持,因此产生了OpenFeign组件。Feign是一个声明式的REST客户端,它采用......
  • Spring事务传播机制理解
    REQUIRED:如果当前没有事务,则自己新建一个事务,如果当前存在事务,则加入这个事务。REQUIRES_NEW:主事务和里面的事务独。SUPPORTS:当前存在事务,则加入当前事务,如果当前没有事务,......