echarts图例旁边加百分比及百分比对齐

news2024/9/20 6:08:49

一、效果图

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

二、代码

import cirle from '@/assets/imgs/dataScree/ybp.png'

let option={
    tooltip: {
      trigger: 'item',
      formatter: function (params) {
        return ''
      }
    },
    legend: {
      orient: 'vertical', // 图例列表的布局朝向,'horizontal'为水平,'vertical'为垂直
      left: '230', // 图例组件离容器左侧的距离
      aligh: 'right',
      top: '20',
      icon: 'circle',
      itemWidth: 8, // 设置图例宽度
      itemHeight: 8, // 设置图例高度
      itemGap: 19,
      textStyle: {
        color: '#FFFFFF',
        fontSize: 11,
        rich: {
        //第一列样式
          oneone: {
            width: 80
          },
          //百分比列样式
          twotwo: {
            width: 30,
            color: '#FFFFFF',
            fontSize: 14,
            fontWeight: 'bolder'
          }
        }
      },
      // 图例百分比计算
      formatter(name) {
        let percentage = 0
        for (let i = 0; i < data1.length; i++) {
          percentage += data1[i].value
        }
        let result = data1.find((item) => item.name == name)
        return `{oneone|${result.name}}{twotwo|${Math.round((result.value / percentage) * 100)} %}`
      }
    },
    series: [
      {
        name: '',
        type: 'pie',
        data: data1,
        radius: ['78%', '88%'],
        center: ['30%', '50%'], // 将饼图位置设置在容器的中间垂直偏下的位置
        avoidLabelOverlap: false,
        padAngle: 3,
        itemStyle: {
          normal: {
            backgroundColor: function (params) {
              var colorList = [
                '#20D49F',
                '#EA9F53',
                '#27FFF7',
                '#275EFF',
                '#DCC821'
              ]
              return colorList[params.dataIndex]
            }
          }
        },
        label: {
          show: false,
          position: 'center'
        },
        rich: {
          percent: {
            fontSize: 24
          }
        },
        labelLine: {
          show: true
        }
      }
    ],
    graphic: [
      {
        type: 'image',
        id: 'background',
        left: '26',
        top: 'center',
        z: -9, // 确保背景图在饼图下层
        bounding: 'raw',
        origin: [200, 200],
        style: {
          image: cirle, // 背景图片地址
          width: 175,
          height: 175,
          opacity: 1
        }
      }
    ]
  }

三、图例百分比主要是legend中的formatter这块,通过textStyle中的rich调整饼图图例的样式

// 图例百分比计算
      formatter(name) {
        let percentage = 0
        for (let i = 0; i < data1.length; i++) {
          percentage += data1[i].value
        }
        let result = data1.find((item) => item.name == name)
        return `{oneone|${result.name}}{twotwo|${Math.round((result.value / percentage) * 100)} %}`
      }

四、如果想实现以下效果,主要是需要配置label这个配置项

在这里插入图片描述

  • 代码
  series: [
          {
            name: this.bieText,
            type: "pie",
            radius: "50%",
            data: this.bieData,
            label: {
              normal: {
                show: true,
                formatter: '{b}{d}%'
  // formatter: '{b}: {c}({d}%)' //自定义显示格式(b:name(当前数据的名称), c:value(当前数据的值), d:百分比)
              }
            },
            emphasis: {
              itemStyle: {
                shadowBlur: 10,
                shadowOffsetX: 0,
                shadowColor: "rgba(0, 0, 0, 0.5)",
              },
            },
          },
        ],

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1994948.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电话机器人能提升销售效率

经济敏捷发展的当天&#xff0c;任何行业都不离开市场&#xff0c;无法让更多人理解本人企业本人的产物。那样的话&#xff0c;像电话营销那样抢手的行业也面临很大的困难&#xff0c;员工不仅工作压力大&#xff0c;工作时间长&#xff0c;呼叫量多&#xff0c;还能忍受顾客的…

LangChain: Reduce size of tokens being passed to OpenAI

题意&#xff1a;在使用 LangChain时&#xff0c;需要减少传递给OpenAI的令牌&#xff08;tokens&#xff09;的数量 问题背景&#xff1a; I am using LangChain to create embeddings and then ask a question to those embeddings like so: 我正在使用 LangChain 来创建嵌…

记录|To run this application, you must install .NET Core.【C#,VS】

目录 前言一、问题描述二、解决办法三、.NET版本和Windows版本对接更新时间 前言 参考文章&#xff1a; 1、安装失败&#xff0c;提示“To run this application,you must install .netcore…” 2、【bug】to run this application ,you must install .net 3、在 Windows 上安装…

【亲测管用】Windows11 部署Maxkb + 本地Ollama

一、下载地址 maxkb&#xff1a;https://maxkb.cn/ ollama: https://ollama.com/download/windows 二、安装ollama 2.1 默认安装 直接install就好&#xff0c;默认是安装到C盘里面的。 安装好之后会显示在 直接打开cmd黑窗口&#xff0c;输入命令即可查看。 2.2 ollama…

什么牌子的洗地机好用?石头、添可、希亦真实使用测评对比!

随着科技的不断进步&#xff0c;许多人已经更新了家中的清洁工具。在挑选时&#xff0c;大家可能会看到很多网络攻略&#xff0c;但看得越多&#xff0c;反而越难抉择。其实&#xff0c;最直接的方法是看看这些工具的真实使用体验&#xff0c;这样就能大概知道自己使用时的感受…

5G 网络切片

5G 业务分类 增强型移动宽带(eMBB) 传统数据业务&#xff0c;特点是高带宽超高可靠性低时延业务&#xff08;URLLC&#xff09;无人驾驶、工业自动化等业务, 特点是高可靠、低时延海量机器类通信(mMTC) 物联网&#xff0c;特点是大量连接&#xff0c;时延不敏感&#xff0c;数…

练习2.19

先上代码吧。 (defn first-denomination [coin-values](first coin-values))(defn no-more? [coin-values](if (empty? coin-values) truefalse))(defn except-first-denomination [coin-values ](rest coin-values ))(defn cc[amount coin-values](cond ( amount 0) 1(or (…

ChatGPTAI指令提示工程案例

一、AI指令提示工程概述 AI指令提示工程&#xff08;AI Prompt Engineering&#xff09;是指通过设计巧妙的提示词&#xff08;Prompt&#xff09;来引导人工智能模型&#xff0c;特别是像ChatGPT这样的自然语言处理模型&#xff0c;生成符合用户需求的回答。这一过程不仅涉及…

重塑视界,流畅无界:『Levels of Detail』

在那片烽火连天的虚拟疆域——《刺激战场》中&#xff0c;你是否曾披荆斩棘&#xff0c;穿梭于一个个错落有致的城市迷宫&#xff1f;当我们飞越天际&#xff0c;俯瞰那些精心雕琢的城市场景&#xff0c;心中是否闪过一丝好奇的火花&#xff1a;在这广阔天地间&#xff0c;为何…

冷门细分才是王道,小白用AI几分钟生成,都有出了7000+单了

现在大家都在说&#xff0c;网上整点米&#xff0c;越来越难了&#xff0c;竞争太激烈。那要不看看冷门赛道&#xff0c;看这样冷门细分赛道&#xff0c;【绘本故事】&#xff0c;我视频号&#xff0c;和其他平台都搜了下&#xff0c;千赞&#xff0c;万赞很多。 这样的图片大家…

一文带你彻底搞定小程序分包和预加载

小程序分包 某些情况下&#xff0c;开发者需要将小程序划分成不同的子包&#xff0c;在构建时打包成不同的分包&#xff0c;用户在使用时按需进行加载。 在构建小程序分包项目时&#xff0c;构建会输出一个或多个分包。每个使用分包小程序必定含有一个主包。所谓的主包&#…

思码逸 信通院联合发布:《研发效能基准报告》解读

页数&#xff1a;47页 免费下载&#xff1a;https://fs80.cn/go7exq 本文共计6000字&#xff0c;建议阅读时间&#xff1a;5-10分钟。 阅读本文你将收获&#xff1a; 研发效能基准指标 研发效能基准指标数据&#xff1a;交付速率、交付质量、交付能力 研发效能综合分析&…

基于springboot+vue+uniapp的英语学习交流平台小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

视觉SLAM中的数学基础01 -3D空间的位置表示

在视觉SLAM中&#xff0c;理解和表示3D空间中的位置是至关重要的。这涉及到多种数学概念和工具&#xff0c;如坐标系、向量、矩阵、旋转和平移等。这些数学基础构成了视觉SLAM算法的核心。以下是3D空间位置表示的基本数学概念。 这是一个表示世界坐标系和相机坐标系之间关系的3…

以差异化运营高亮建材企业品牌优势,多层级孵化客户成交

建筑建材业作为国民经济的支柱产业之一,行业周期性明显,其发展情况与宏观经济走势高度相关。过去一年,随着供应链上下游的发展滑坡,建筑建材企业的流动性压力进一步显现,市场格局逐渐两级分化,头部企业甚至能在出口旺季一举收割将近80%的盈利份额。 对于非集团性门窗企业来说,…

人力资源外包项目适合哪些人做?

人力资源外包(RPO)项目在现代企业管理中扮演了重要角色。然而&#xff0c;成功运营RPO项目需要具备特定技能和背景的人员。以下是适合从事人力资源外包项目的几类人群&#xff0c;他们的特点和能力使他们能够在这一领域中取得成功。 1. 具备人力资源管理经验的专业人士 具备丰富…

Spring IOC and DI

1.什么是IOC &#xff08;1&#xff09;在Spring的MVC中我们学习了&#xff0c;让我们知道了将对象如何交给Spring进行管理类 &#xff08;2&#xff09;Spring是一个开源框架&#xff0c;是包含众多方法容器的IOC容器 &#xff08;3&#xff09;那么什么事IOC&#xff0c;我…

条理最清楚的最常用的 Git 管理指令

基础提交操作 git init # 将本地文件夹变为一个git仓库 git clone #将远程仓库克隆到本地 git log 查看提交记录 git fetch 命令更新remote索引&#xff0c;解决git branch -a没有最新分支的问题 git add # 将单个文件从工作区添加到暂存区 git add . # 将所有文件添加到暂存…

Win11(23H2)Copilot电脑重启会修改注册表解决办法

基础条件&#xff1a;科学上网 参考这两篇文章开启Copilot 参考一 参考二 成功后&#xff0c;如果你电脑每次重启&#xff0c;Copilot图标都会消失&#xff0c;那就是注册表被修改了&#xff0c;可以用一个取巧的办法解决 解决办法如下&#xff1a; 1. 桌面上新建一个文本&…

2024年【烟花爆竹经营单位主要负责人】找解析及烟花爆竹经营单位主要负责人复审模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 烟花爆竹经营单位主要负责人找解析参考答案及烟花爆竹经营单位主要负责人考试试题解析是安全生产模拟考试一点通题库老师及烟花爆竹经营单位主要负责人操作证已考过的学员汇总&#xff0c;相对有效帮助烟花爆竹经营单…