当前位置: 首页 > news >正文

在一个div标签中平行放置两个echarts 环形图

例图做成这样的
在这里插入图片描述
首先我们看官网
找到示例里面的的饼图 环形图 在这里插入图片描述
你把代码拿过去,注意的是你的div一定要给高度,不然可能就会出现你的图不出现。
我是在大佬的帮助下封装了两个组件,然后一个一个写的死数据,因为后台还没有接口,先写死,后期再改。
index.vue 里的代码在这里插入图片描述
后边都是一样的,把样式写好就行了。
在这里插入图片描述
一定要注册和引入组件,还要传参呢
data里的数据在这里插入图片描述
然后就是组件里面的数据了
,写了一个,那一个也是一样的,看你怎么要求稍微变一变。

<template
  <div class="mainEcarts">
    <!-- 组件1左侧第一个 -->
    <div ref="chart1" class="facilitySort" />
  </div>
</template>

<script>
export default {
  props: ['seriesArrOne'],
  data() {
    return {
      retrunJsonArr: []
    }
  },
  mounted() {
    this.initChart()
  },
  methods: {
    initChart() {
      const _this = this
      const option = {
        tooltip: { // 配置提示信息:
          trigger: 'item',
          // formatter: '{a} <br/>{b}: {c} ({d}%)',
          // showContent: true,
          // show: false
          show: true
        },
        grid: {
          top: '1%'
        },
        series: [ // 系列列表 每个系列通过 type 决定自己的图表类型
          {
            name: '保育',
            type: 'pie', // 类型为饼状图
            clickable: false,
            radius: ['50%', '70%'], //  饼图的半径
            avoidLabelOverlap: false,
            label: {
              show: true, // show: false,
              position: 'center',
              formatter: function(params) { // 返回中心的数字显示
                // console.log(params, 'paramsparamsparams', _this.seriesArrOne)
                // return params.value
                // forEach循环遍历数组
                var echartsArr = _this.seriesArrOne
                // console.log(echartsArr)
                var val = []
                let val1 = ''
                echartsArr.forEach(item => {
                  // console.log(item.value)
                  val.push(item.value)
                  // console.log(val)
                  val1 = val[0]
                })
                return `${val1} %`
                // return `${_this.seriesArrOne[0].value}%`
              },
              // formatter:function(name){  //该函数用于设置图例显示后的百分比
              //   var data = list
              //   var total = 0;
              //   var value;
              //   list.forEach((item)=>{
              //       total += item.value;
              //       if (item.name == name) {
              //           value = item.value;
              //       }
              //   })
              //   var p = Math.round(((value / total) * 100)); //求出百分比
              //   return `${name}  ${p}%`;  //返回出图例所显示的内容是名称+百分比
              // },
              textStyle: {
                fontSize: 12
              }
            },
            emphasis: {
              label: {
                show: true,
                fontSize: '14',
                fontWeight: 'bold'
              }
            },
            labelLine: {
              show: false
            },
            data: this.seriesArrOne,
            color: ['#03C785', '#D2D2D2']
          }
        ]
      }
      this.$nextTick(() => {
        setTimeout(() => {
          this.myChart1 = this.$echarts.init(this.$refs.chart1)
          this.myChart1.setOption(option, true)
          // console.log(option, '/option')
          // const arrOne = []
          // option.series.forEach(item => {
          //   console.log(item, '/item 每一项')
          //   item.data.forEach(el => {
          //     console.log(el, '/el')
          //     arrOne.push(el.value)
          //     this.retrunJsonArr = arrOne
          //     console.log(this.retrunJsonArr)
          //   })
          // })
        }, 100)
      })
    }
  }
}
</script>

<style lang="scss" scoped>
.mainEcarts {
  width: 100%;
  height: 100%;
  .facilitySort {
    width: 100%;
    height: 100%;
  }
}
</style>

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

  • node-webkit,html打包成桌面应用,pc应用
  • 【HTML5】Web存储
  • 利用 vuex写一个todoList
  • Java日志组件2---Log4j(org.apache.log4j.Logger)
  • react项目搭建
  • mybatis3.0 配置等值连接两种方式:resultMap和resulttype
  • react官方脚手架安装
  • 怎么用ChemDraw 15.1 Pro绘制彩色结构
  • react实现打印功能
  • 关于CreateProcess函数一些经验
  • 前端解决跨域 cors
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 斐波那契数列 的计算规则
  • react 中 props 和 state的相同与不同
  • 理解java Web项目中的路径问题
  • Android组件 - 收藏集 - 掘金
  • C++类中的特殊成员函数
  • docker python 配置
  • in typeof instanceof ===这些运算符有什么作用
  • JAVA_NIO系列——Channel和Buffer详解
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • Laravel 中的一个后期静态绑定
  • leetcode388. Longest Absolute File Path
  • mongo索引构建
  • TCP拥塞控制
  • WebSocket使用
  • 彻底搞懂浏览器Event-loop
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 如何设计一个微型分布式架构?
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • elasticsearch-head插件安装
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • (07)Hive——窗口函数详解
  • (1)Nginx简介和安装教程
  • (12)Linux 常见的三种进程状态
  • (2)MFC+openGL单文档框架glFrame
  • (C语言)fgets与fputs函数详解
  • (floyd+补集) poj 3275
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (八)c52学习之旅-中断实验
  • (第27天)Oracle 数据泵转换分区表
  • (十八)三元表达式和列表解析
  • (顺序)容器的好伴侣 --- 容器适配器
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • **PHP分步表单提交思路(分页表单提交)
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)