vue.axios数据与echarts data交互
我们在给数据数据进行统计时,会用到饼状图,条形图等。而echarts为我们提供了各式各样的的统计图形,这是图片 废话不多说上实例:
实例
-
基于打包环境安装echarts
npm install echarts --save
-
项目中引入echarts
import * as echarts from echarts;
-
创建一个实例
//创建容器 <div id="main" style="float:left;width:100%;height: 300px;background: #DCDFE6"></div>
mounted(){ this.statistics(); }, methods:{ statistics(){ // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById(main)); // 绘制图表 myChart.setOption({ title: { text: ECharts 入门示例 }, tooltip: { }, xAxis: { data: [衬衫, 羊毛衫, 雪纺衫, 裤子, 高跟鞋, 袜子] }, yAxis: { }, series: [{ name: 销量, type: bar, data: [5, 20, 36, 10, 10, 100] }] }); }, }
完成如下图:
以上代码我都是从拷贝过来的,欲知详情可以去官网查看。 不过在现实中我们往往要的是真实数据来进行统计,这就要从后台获取数据。
动态数据结合echarts
-
在后台查询出数据
@GetMapping("/consunmerSex") public List<Map<String,Object>> consunmerSex(){ //根据条件构造器查询出用户性别为男的个数 QueryWrapper<Consumer> queryWrapper01=new QueryWrapper<>(); queryWrapper01.eq("sex","男"); Integer count01 = consumerService.count(queryWrapper01); //根据条件构造器查询出用户性别为女的个数 QueryWrapper<Consumer> queryWrapper02=new QueryWrapper<>(); queryWrapper02.eq("sex","女"); Integer count02 = consumerService.count(queryWrapper02); //创建一个集合来装获取到的用户性别数据 List<Integer>list=new ArrayList<>(); list.add(count01); list.add(count02); //创建一个集合来装性别标识 List<String>list01=new ArrayList<>(); list01.add("男"); list01.add("女"); //创建一个集合来装分男女性别查询出来的数据 List<Map<String,Object>> SexConsunmer=new ArrayList<>(); for (int i=0;i<list.size();i++){ Map<String,Object> map=new HashMap<>(); map.put("name",list01.get(i)); map.put("Nub",list.get(i)); SexConsunmer.add(map); } return SexConsunmer; }
-
在前台设置容器接收
data(){ return{ /*用户男性别个数*/ nanConsunmer:, /*用户女性别个数*/ nvConsunmer:, } } mounted() { //方法调用 this.statistics(); },
-
方法
完成如下:
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
如何快速插入10万条数据?