博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
echarts - 特殊需求实现代码汇总之【饼图】篇
阅读量:5921 次
发布时间:2019-06-19

本文共 4696 字,大约阅读时间需要 15 分钟。

2018-07-24 15:36:43 起 - 

饼图单项不同颜色的设置

效果图:

实现:

说明:

其实很简单,就是设置全局的color属性即可。color属性可以是一套数组,里边的样式以字符串格式设置。

设置以后饼图每一项会依照顺序使用数组的颜色值,如果不够用会循环使用。

 

饼图每个单项的渐变效果

效果图:

实现:

说明:

data数据可以是一个数组,数组每一项是一个对象,对象里边可以再次设置私有属性以覆盖全局属性,比如color。

所以对每一个单项设置渐变色,就在data数组的每一个对象中单独设置color即可。

代码:

data: [    {        value: 335,        name: '直接访问',        itemStyle: {            color: {                colorStops: [{                        offset: 0,                        color: '#ff7474 ' // 0% 处的颜色                    }, {                        offset: 1,                        color: '#4176ff' // 100% 处的颜色                    }]            }        }    },    {        value: 310,        name: '邮件营销',        itemStyle: {            color: {                colorStops: [{                        offset: 0,                        color: '#ffe390' // 0% 处的颜色                    }, {                        offset: 1,                        color: '#f7c222' // 100% 处的颜色                    }]            }        }    },    {        value: 234,        name: '联盟广告',        itemStyle: {            color: {                colorStops: [{                        offset: 0,                        color: '#9090ff' // 0% 处的颜色                    }, {                        offset: 1,                        color: '#5656d0' // 100% 处的颜色                    }]            }        }    },    {        value: 135,        name: '视频广告',        itemStyle: {            color: {                colorStops: [{                        offset: 0,                        color: '#95ec95' // 0% 处的颜色                    }, {                        offset: 1,                        color: '#4ebb4e' // 100% 处的颜色                    }]            }        }    },    {        value: 1548,        name: '搜索引擎',        itemStyle: {            color: {                colorStops: [{                        offset: 0,                        color: '#ea92ff' // 0% 处的颜色                    }, {                        offset: 1,                        color: '#a847bf' // 100% 处的颜色                    }]            }        }    }]

  

饼图label固定字数,超出的限制为显示”...”

效果图:

实现:

见另一篇文章总结比较清晰明了:

 

饼图根据单项数据大小设置文案的展示状态(是否探出等)

效果图:

实现:

说明:

同颜色的道理一样,data数组里边的每一项还有很多可以设置的属性,包括label是否展示等。

所以在拿到数据以后,遍历返回的data每一项的value值,如果小于自己的需求范围,就在这一项上边设置label不展示的代码即可。

代码:

data: [{        value: 35,        name: '视频广告',        labelLine: {            normal: {                show: false            }        },        label: {            normal: {                show: false            }        }    }, {        value: 315,        name: '邮件营销'    }]

 

饼图展示标签在外边或在里边

效果图:

 

实现:

 

说明:

默认设置全部都不探出,只在内部显示,而只要data某一项中value值符合条件就对此项单独设置为label探出效果即可。

代码:

option = {    title: {        text: '某站点用户访问来源',        subtext: '纯属虚构',        x: 'center'    },    tooltip: {        trigger: 'item',        formatter: "{a} 
{b} : {c} ({d}%)" }, legend: { orient: 'vertical', left: 'left', data: ['直接访问', '邮件营销', '联盟广告', '视频广告', '搜索引擎'] }, series: [{ name: '访问来源', type: 'pie', radius: '55%', center: ['50%', '60%'], label: { show: true, position: 'inside' }, labelLine: { show: false, }, data: [{ value: 335, name: '直接访问' }, { value: 310, name: '邮件营销' }, { value: 234, name: '联盟广告' }, { value: 135, name: '视频广告视频广告视频广告', label: { show: true, position: 'outside' }, labelLine: { show: true, smooth: true, lineStyle: { // color: 'red' } } }, { value: 1548, name: '搜索引擎搜索引擎搜索引擎搜索引擎搜索引擎', label: { formatter: function (params) { if (params.data.name.length > 5) { var labelNewText = params.data.name.substring(0, 6) + ' ...' } return labelNewText } } }], itemStyle: { emphasis: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } } }]};

 

转载于:https://www.cnblogs.com/padding1015/p/9360408.html

你可能感兴趣的文章
oracle进制-10进制跟2进制互转
查看>>
微网站
查看>>
Java中获取完整的访问url
查看>>
DOCKER在windows上安装与配置
查看>>
代码自动生成工具_java版
查看>>
Tomcat 配置 默认应用 (去掉项目名称、移除项目名称)
查看>>
linux网络虚拟化
查看>>
CSS教程:div垂直居中的N种方法[转]
查看>>
[转]低成本搭建谷歌镜像
查看>>
Linux企业集群用商用硬件和免费软件构建高可用集群PDF
查看>>
Linux下rz/sz安装及使用方法
查看>>
python绝技 — 侦听802.11 Probe请求
查看>>
深度学习:识别图片中的电话号码(2)
查看>>
C++ 和 java 使用 AES CBC 128 加解密
查看>>
FB面经 Prepare: All Palindromic Substrings
查看>>
ubuntu怎用使用命令搜索软件源中的软件
查看>>
【Mysql】mysql和mariadb的区别
查看>>
js循环遍历的两种方法for循环和for ... in 循环
查看>>
Solution of NumberOfDiscIntersections by Codility
查看>>
C语言中递归什么时候能够省略return引发的思考:通过内联汇编解读C语言函数return的本质...
查看>>