zoukankan      html  css  js  c++  java
  • Echarts 饼图,legend样式美化

    最后样式图:

    实现代码:

    var myChart = echarts.init(document.getElementById('container'));
                  let option = {
                      /*{b}: {c} ({d}%*/
                      legend: {
                          orient: 'vertical',
                          icon: "circle",
                          itemWidth: 5,
                          right: 20,
                          top: 70,
                          formatter: (name) => {
                              let data = this.data;
                              let total = 0;
                              let target;
                              for (let i = 0; i < data.length; i++) {
                                  total += data[i].value;
                                  if (data[i].name === name) {
                                      target = data[i].value;
                                  }
                              }
                              let arr = [
                                  '{a|' + name + '}{b|' + target + '}{c|' + ((target / total) * 100).toFixed(2) + '%}'
                              ];
     
                              return arr.join('
    ')
                          },
                          textStyle: {
                              rich: {
                                  a: {
                                      verticalAlign: 'right',
                                      fontSize: 12,
                                      align: 'left',
                                      // padding:[0,28,0,0],
                                       70
                                  },
                                  b: {
                                      fontSize: 12,
                                      align: 'left',
                                      // padding:[0,28,0,0],
                                       50
     
                                  },
                                  c: {
                                      fontSize: 12,
                                      align: 'left',
                                       50
                                  }
                              }
                          },
                      },
                      // color:this.getRandomColor,
                      series: [
                          {
                              center: ['25%', '50%'],
                              name: '访问来源',
                              type: 'pie',
                              radius: ['50%', '60%'],
                              avoidLabelOverlap: true,
                              hoverOffset: 0,
                              hoverAnimation: false,
                              silent: true,
                              /*label: {
                                  normal: {
                                      show: false,
                                      position: 'center'
                                  }*/
                              label: {
                                  show: true,
                                  position: 'center',
                                  textStyle: {
                                      fontSize: '20',
                                      fontFamily: '黑体',
                                      fontWeight: 'bold',
                                      rich: {
                                          d: {
                                              fontSize: 35,
                                              color: '#696969',
                                          },
                                          e: {
                                              fontSize: 17,
                                              color: '#696969',
                                              lineHeight: 25,
                                          }
                                      }
                                  },
                                  formatter: (params) => {
                                      let data = this.data;
                                      let number = 0;
                                      data.forEach((data) => {
                                          number += data.value;
                                      });
                                      return [
                                          '{d|' + number + '}
    ' +
                                          '{e|影像数量}'
                                      ]
                                  }
     
                                  // emphasis: {
                                  //     show: true,
                                  //     textStyle: {
                                  //         fontSize: '30',
                                  //         fontWeight: 'bold'
                                  //     }
                                  // }
                              },
                              labelLine: {
                                  normal: {
                                      show: false
                                  }
                              },
                              data: this.data
                          }
                      ]
                  };
                  if (option && typeof option === "object") {
                      myChart.setOption(option, true);
                  }

    富文本标签

    https://echarts.baidu.com/option.html#legend.textStyle.rich

    如果真的不知道将来要做什么,索性就先做好眼前的事情。只要今天比昨天过得好,就是进步。长此以往,时间自然会还你一个意想不到的未来。
    生活像一个杯子。一开始,里面是空的,之后,要看你怎么对待它。如果你只往不如意的方面想,那么你最终辉得到一杯苦水。如果你往好的方面想,那么你最终会得到一杯清泉。
    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
  • 相关阅读:
    基于javascript 上传
    mysql 分组查询
    php 遍历指定路径所有目录与文件夹
    设置Tomcat的内存
    SQL语句执行顺序
    XFire发布Webservice
    Java排序算法
    Oracle定时任务DBMS_JOB
    JAXWS发布WebService
    Mogodb基础知识和安装学习
  • 原文地址:https://www.cnblogs.com/lipengze/p/14898233.html
Copyright © 2011-2022 走看看