实现echarts饼状图引导线加圆点实现思路:

1.首先我们在series里设置三个饼状图,设置共有的数据来防止页面交互显示错位问题
设置minAngle 最小区域扇面角度防止多个数据为0时候引导线会合并在一起

let data = [{value: 20, name: '测试1'},{value: 30,name: '测试2'},{value: 30, name: '测试3' },{value: 20, name: '测试4' },
];

2.第一个为饼状图的圆点显示,该数据为series里的第一个对象代码如下:

{type: 'pie',minAngle: 18,radius: ['65%', '70%'],center: ['50%', '45%'],data: [{value: 20, name: ''},{value: 30,name: ''},{value: 30, name: '' },{value: 20, name: '' },                                ],labelLine: { length: 0,length2: 0,minSurfaceAngle: 90},itemStyle: { opacity: 0  },label: {normal: {opacity:1,show: true,width:0,height:0,padding:2.5,borderRadius:2.5, backgroundColor:"auto",distanceToLabelLine :-2.5}}
}

注意:圆点显示的data里面name默认给空数据,能防止圆点显示错位问题

3.第二个为饼状图的引导线显示,代码如下:

{type: 'pie',minAngle: 18,radius: ['65%', '70%'],center: ['50%', '45%'],data:data,itemStyle: { opacity:0 },label: {alignTo: 'edge',margin: 0,formatter: '{value|{d}%}\n{name|{b} }',opacity:1,lineHeight: 20,rich: {value: {fontSize: 14,color: '#333',fontWeight:'bold',padding:[0,0,0,0],},name: {fontSize: 14,color: '#333',padding:[8,0,0,0],},},distanceToLabelLine: 0},labelLine: {length: 20,length2: 30,minSurfaceAngle: 90},labelLayout: function (params) {const isLeft = params.labelRect.x < myChart.getWidth() / 2;const points = params.labelLinePoints;points[2][0] = isLeft? params.labelRect.x : params.labelRect.x + params.labelRect.width;return {labelLinePoints: points};},
},

4.第三个为饼状图扇形区,代码如下:

{type: 'pie',minAngle: 18,radius: ['44%', '65%'],center: ['50%', '45%'],data: data,label: {show: false},
}

5.综上,我们的代码就编写成功了现在看看图表效果

6.现在,我们整理下代码,看看整体代码

let data = [{value: 20, name: '测试1'},{value: 30,name: '测试2'},{value: 30, name: '测试3' },{value: 20, name: '测试4' },
];
option = {series: [{type: 'pie',minAngle: 18,radius: ['65%', '70%'],center: ['50%', '45%'],data: [{value: 20, name: ''},{value: 30,name: ''},{value: 30, name: '' },{value: 20, name: '' },                                ],labelLine: { length: 0,length2: 0,minSurfaceAngle: 90},itemStyle: { opacity: 0  },label: {normal: {opacity:1,show: true,width:0,height:0,padding:2.5,borderRadius:2.5, backgroundColor:"auto",distanceToLabelLine :-2.5}}      },{type: 'pie',minAngle: 18,radius: ['65%', '70%'],center: ['50%', '45%'],data:data,itemStyle: { opacity:0 },label: {alignTo: 'edge',margin: 0,formatter: '{value|{d}%}\n{name|{b} }',opacity:1,lineHeight: 20,rich: {value: {fontSize: 14,color: '#333',fontWeight:'bold',padding:[0,0,0,0],},name: {fontSize: 14,color: '#333',padding:[8,0,0,0],},},distanceToLabelLine: 0},labelLine: {length: 20,length2: 30,minSurfaceAngle: 90},labelLayout: function (params) {const isLeft = params.labelRect.x < myChart.getWidth() / 2;const points = params.labelLinePoints;points[2][0] = isLeft? params.labelRect.x : params.labelRect.x + params.labelRect.width;return {labelLinePoints: points};},
},{type: 'pie',minAngle: 18,radius: ['44%', '65%'],center: ['50%', '45%'],data: data,label: {show: false},}]
};

echarts饼状图引导线加圆点相关推荐

  1. Echarts饼状图视觉引导线设置

    如何设置饼状图引导线位置 我们在使用Echarts绘制饼状图时,经常需要确定引导线位置,官网给出的示例并未明确哪些属性决定了引导方式及位置,例如: 如下外部引导线方式: 有内部引导线方式 如何设置这两 ...

  2. 去掉Echarts饼状图的引导线

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>五分钟 ...

  3. echarts饼状图设置label的交互效果,饼状图鼠标浮上图形才显示label和视觉引导线

    echarts饼状图默认label和视觉引导线效果: 这个效果没有没有形成与用户的交互,此时添加如下设置: label: {show: false,position: 'outside'},empha ...

  4. echars ajax 饼状图,echarts饼状图实现方法

    当前位置:我的异常网» Web前端 » echarts饼状图实现方法 echarts饼状图实现方法 www.myexceptions.net  网友分享于:2015-09-27  浏览:0次 echa ...

  5. echarts饼状图的使用

    echarts饼状图的使用 地址:https://echarts.apache.org/zh/index.html 第一步: 通过 npm 获取 echarts, npm install echart ...

  6. ECharts饼状图lable显示Value所占百分比

    ECharts饼状图lable显示Value所占百分比以及legend显示Value所占百分比 简单的实现可以参考: export default {data() {return {}},mounte ...

  7. Angular2组件与Echarts饼状图交互之饼图制作

    一.前言 1.基于ng4项目 2.组件包括:根组件app和饼状图组件echart 二.饼状图开发过程 1.添加插件 echart cnpm install echarts --save 2.创建组件 ...

  8. Echarts饼状图数据动态获取

    首先肯定是引入echarts的相关jar包,地址:https://www.echartsjs.com/zh/download.html 你可以引入在线定制生成的jar包,如下图所示: 然后接下来就自己 ...

  9. echarts 饼状图 java_SpringBoot+Echarts实现请求后台数据显示饼状图

    场景 SpringBoot搭建后台获取数据,前端可视化使用echarts的饼状图. Echarts3官网 获取Echarts 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,我们提供 ...

最新文章

  1. K:hash(哈希)碰撞攻击
  2. 图像处理特征不变算子系列之KLT算子
  3. a与a:link、a:visited、a:hover、a:active
  4. SpatialHadoop中空间索引系列之(四)空间格网索引实现
  5. 「AI 口罩检查官」上线,0.3 秒检查口罩佩戴情况
  6. 第一段冲刺 站立会议 5.5
  7. MySQL 资源大全
  8. dbf文件怎么创建_DBC文件到底是个啥
  9. Bailian4075 矩阵旋转【矩阵】
  10. java 选择排序入门
  11. iso12233测试方法_ISO12233分辨率图像测试卡使用时拍摄方法
  12. Ps中的图片如何在手机上在线预览
  13. [CGAL] CGAL的编译与使用
  14. 交换机下接路由器lan还是wan_无线路由器wan口未连接如何解决【解决方法】
  15. Ruby编程语言面试题库和答案(语法、代码)
  16. IDEA: 遇到问题Error during artifact deployment. See server log for details,解决
  17. STM32L4超低功耗特性概述
  18. 完美的支持Retina MACBOOK的股票软件-富图牛牛
  19. 什么是宽容?你是一个有宽容心的人吗?
  20. Spark 应用开发程序

热门文章

  1. 合同word快速开发成html格式
  2. Math.round()什么作用?
  3. 2013.06.24《详细的英语音标讲解一…
  4. 一氧化碳中毒急救常识
  5. 并非所有杀毒软件都万能,来看看真实情况
  6. 优思学院|六西格玛绿带和黑带的年薪收入有多少?
  7. 邢智明:铁路信息化的应用方向及项目
  8. mysql一个表能写2个auto_in_MySQL基础(二)操作表记录
  9. 联想服务器不支持pe安装系统,联想ThinkBook 2021装win10系统及bios设置方法(解决pe找不到硬盘问题)...
  10. for (const auto amp;s : strs) {} 和迭代器