16. Springboot3+Vue3实现echarts数据统计

923 字约 2 分钟读完4307 次阅读更新于 2026/5/3

统计哪些数据

  1. 统计不同分类下用户发布旅游攻略帖子的数量(反映出:大家比较喜欢去哪类的旅游景点)-饼图
  2. 统计不同用户发布帖子数量Top5(反映出:平台活跃用户Top5)-柱状图
  3. 统计最近一周每天平台用户发布的帖子数量(反映出:每天的活跃情况)-折线图

统计是解决一些实际数据的整合或者反馈出的一些现象,所以它要具有一些实用的意义。

如何去把玩一个统计图

  1. 去官网体验一下
  2. 改一改它的数据,找到该统计图所需要的数据在哪个地方
  3. 分析该数据的结构(数据结构)重要!!

饼图数据部分的数据结构:

data: [
    { value: 1048, name: '风景名胜' },
    { value: 735, name: '历史古迹' },
    { value: 580, name: '人文景观' }
],

前端:[ ] 表示一个数组(对应多条数据),{ } 表示一个对象(对应一条数据),

对应的后端:List(对应多条数据),某个对象或者是Map<key, value>

该数据结构从后端返回的数据应该是一个什么样子的呢?List 或者 List<Map<key, vaule>

  1. 后台接口封装该数据结构所需要的数据

echarts官网

echarts官网(新版):https://echarts.apache.org/examples/zh/index.html

echarts官网(旧版):https://echarts.apache.org/v4/examples/zh/index.html

echarts安装与使用

cd vue(视情况而定)

npm install echarts --save

import * as echarts from "echarts";

数据结构

进多少天怎么处理?

Date today = new Date();
DateTime start = DateUtil.offsetDay(today, -90);
List<String> list = DateUtil.rangeToList(start, today, DateField.DAY_OF_YEAR).stream().map(DateUtil::formatDate).toList();

后端接口

问题处理

说明dom没法初始化,onMounted是等页面dom元素加载完毕之后开始执行。