Echarst柱状图+饼状图+vue2 商品案例
最终效果展示:
echarst非常简单,就是使用的数据需要按照规定的格式,往往是获取数据较难
首先前端,只需要一个div,用ref指定名称,定好宽高,就ok,div多大,图就会自适应多大
<div><h1 style="display: inline-block;width: 800px">商品分类柱状图</h1><h1 style="display: inline-block;width: 400px">商品类型占比图</h1><--柱状图div--><div style="width: 600px;height: 600px;float: left" ref="zhu"></div><--饼状图div--><div style="width: 600px;height: 600px;float: right" ref="bing"></div></div>
然后写一个方法用$refs指定div设置图表
//柱状图getZhu(){const Echarst=echarts.init(this.$refs.zhu)Echarst.setOption({xAxis: {type: 'category',data: this.zhuData1},yAxis: {type: 'value'},series: [{data: this.zhuData2,type: 'bar'}]})},//饼状图getBing(){const Echarts=echarts.init(this.$refs.bing)Echarts.setOption({series:[{name: 'Access From',type: 'pie',radius: '50%',label: {show: true},data: this.bingData},]})}
上面用到的data数据,我们也创建一下,饼状图需要一个数组,柱状图需要两个
data(){return{bingData:[],zhuData1:[],zhuData2:[],}},
最后就是获取这些数据,也可以写si数据试一下能跑起来不,反正就是要获取到以下结构的数据:
data(){return{bingData:[{name:"水果类",value:6},{name:"零食类",value:3},{name:"蔬菜类",value:9},],zhuData1:["水果类","零食类","蔬菜类"],zhuData2:[6,3,9],}},
我是怎么获取的这里也展示一下,
后端代码:
在typeController只要两个方法:
@CrossOrigin
@RequestMapping("/types")
@RestController
public class TypeController {@GetMappingpublic Result findAll(){//获取所有typereturn service.findAll();}@GetMapping("/count")public Result getTypeCount(){//获取每个类型有多少商品countreturn service.getTypeCount();}
}
typeService,相信大家都会写:
public interface TypeService extends IService<Type> {Result findAll();Result getTypeCount();}
@Service
public class TypeServiceImpl extends ServiceImpl<TypeMapper, Type> implements TypeService {@Overridepublic Result findAll() {return Result.ok(list());}@Overridepublic Result getTypeCount() {return Result.ok(typeMapper.getTypeCount());}
}
mapper层只有一个方法
@Mapper
public interface TypeMapper extends BaseMapper<Type>{List<Type> getTypeCount();
}
typeMapper.xml 需要自己写sql语句了
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mapper.TypeMapper"><select id="getTypeCount" resultType="Type">select t.type_name typeName,count(*) `count`from goods ginner join `type` t on t.tid=g.tidgroup by type_name</select>
</mapper>
yml的配置
spring:datasource:url: jdbc:mysql://localhost:3306/goods?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT-8&useSSL=falsedriver-class-name: com.mysql.cj.jdbc.Driverusername: rootpassword: rootserver:port: 8088servlet:context-path: /goodsmybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImplmap-underscore-to-camel-case: truetype-aliases-package: com.example.entityglobal-config:db-config:id-type: automapper-locations: classpath:mapper/*.xml
前端的this.baseUrl也记得换成相对应的路径(http://localhost:8088/goods)
最后启动前端后端,访问
http://localhost:8088
Echarst柱状图+饼状图+vue2 商品案例相关推荐
- java excel 饼图,java 导入导出excle 和 生成柱状图饼状图的demo/excle数据如何转成饼状图...
在EXCEL中,如何把表格中的数据转换成饼状图? 在Excel中,把中的数据转换状图的操作步骤如下: 想转换的数据源,插入饼状图,Excel会自动根据选择的数据源生成饼状图.接下来,可以自定义饼状图的 ...
- Word中插入表格与柱状图饼状图技术经验分享
最近公司一个项目里要求自动生成报告功能,研究了1周多,主要实现方式是通过调用微软Office COM组件来实现操作word文档,生成段落,表格,及各种图表. 本人发现操作word地方也有几个坑人的地方 ...
- Superset 制作 地图 柱状图 饼状图
文章目录 制作地图 制作柱状图 制作饼状图 制作地图 1)创建 Chart 2)配置 Chart 3)结果图 制作柱状图 1)创建 Chart 2)配置 Chart 3)结果图 制作饼状图 1)创建 ...
- java实现将数据生成图表至excel导出(包括折线图,柱状图,饼状图)
1. 目的 根据已有数据,手动(java后台)生成图表至excel并导出.用于后台查询到数据后直接创建图表,可以代替直接使用图表信息字符串. 2. 说明 使用jfree图表绘制类库绘制图表,并生成到本 ...
- poi导出excel文件,并生成原生图表(包括折线图,柱状图,饼状图,面积图)
前段时间,因为客户需要,要做一个导出excel文件功能,并能生成原生的图表的(不是把图片插入到excel文档),找了很多文档看,也看了很多别人的代码,个人也总结了一下,不足之处,请各位大牛谅解. 需要 ...
- mysql 柱状图统计_js/jquery 进行动态统计 各种柱状图 饼状图 线条图 等
1.简单示例1 线条图 $(document).ready(function(){ var plot1 = $.jqplot ('chart1', [[3,7,9,1,4,6,8,2,5]]); }) ...
- matlab柱状斜线_Matlab:柱状图饼状图填充不同条纹
下面就是重点:如何把上述图像转换成黑白图像,并填充不同条纹. 首先,创建名为"applyhatch.m"的函数脚本. 在同一路径下. 代码如下:--复制即可. function a ...
- 动态绘制柱状图饼状图
http://www.cnblogs.com/haian/archive/2009/12/08/1619751.html 转载于:https://www.cnblogs.com/modernsky20 ...
- 封装构造函数,用canvas写饼状图和柱状图
封装构造函数,用canvas写饼状图和柱状图 封装函数 // 场景 function XDLScence( options ) {this.stage = options.stage;//执行场景的初 ...
最新文章
- 框架页面jquery装载
- 【Java Web开发指南】解析Spring中Ioc和DI(入门Demo)
- 虚拟化涉及的关键技术都有哪些,分别实现了什么功能?
- 谷歌浏览器没法安装插件,提示程序包无效
- Android开发切换host应用
- Web前端:11个让你代码整洁的原则
- redis rdb aof区别_10分钟彻底理解Redis的持久化机制:RDB和AOF
- PHP实现zip字典破解
- 2019年1月1日起,电商法实施、电子证照“国标”正式发布
- juniper使用U盘安装junos10k2系统
- zebradesigner2教程_ZebraDesigner pro 2免费版
- 手机上将mp4转换成amv_如何在智能手机上将图像转换为黑白图像
- JavaScript实现点击一下显示,再点击一下隐藏的功能(使用工厂函数)
- 『常识』印刷纸张尺寸对比表
- java输出三角形星星
- jsplumb使用过程中可能碰见的一些问题
- linux个人网站制作教程,用LaTeX制作个人简历
- Centos7下安装Tkinter的一些问题
- spring定时器触发时间表达式规则
- window下使用qemu加速使用ubuntu最新版
热门文章
- manjaro软件源报错 不停看到错误 PackageName: signature from User email@archlinux.org is invalid 的几种解决方法...
- Ant design pro简单使用
- 移动产品设计(03)-移动App互联网汽车、互联网装修、K12教育需求
- PING某个IP地址网络中断提示报警
- 开源软件开发导论第三次作业——openKylin RISC-V系统启动优化 proposal
- 【GPLT】L2-014 列车调度
- HighD数据集Python处理(超车变道邻近车辆数据筛选)
- 性能测试的需求有哪些指标?
- PU learning算法简介
- 爆破音和失爆音----来自于流利说,课后总结