main.js 引入echarts

// 引入echarts
import Echarts from 'echarts'
Vue.prototype.$echarts = Echarts
 
<template>
<div>
<!-- 为ECharts准备一个具备大小(宽高) -->
<div id="ringDiagram" :style="{width: '217px',height:'254px'}"></div>
</div>
</template>
<script>
实现如图效果
 
 

export default {
name: 'cart',
data () {
return {
msg:'这是一个购物车页面',
dataList:[
{value:335, name:'应交人民币'},
{value:310, name:'应交支付宝'},
{value:234, name:'应交微信'},
{value:135, name:'应交信用卡'},
{value:1548, name:'应交其他'}
]
}
},
mounted () {
this.ringDrag();
},
methods:{
ringDrag(){
const _dataList=this.dataList;
//console.log(_dataList)
// 基于准备好的dom,初始化echarts实例
const myChart = this.$echarts.init(document.getElementById('main'));
const option = {
tooltip: {
show:true,
trigger: 'item',
formatter: "{a} <br/>{b}: {c}"
},
legend: {
orient: 'vertical',
left: 8,
// y:'bottom',
// right: '7%',
bottom: '23%',
data:this.dataList.name,
padding:[0,10,0,0],
selectedMode:false,
itemWidth:10,
itemHeight:10,
icon:'circle',
textStyle:{
fontSize:13,
width:160,
rich:{
a:{
align:'left',
color:'#77899c',
padding:[0,0,0,10],
},
b:{
align:'right',
color:'#eb3a53',
},
c:{
align:'right',
color:'#4ed139',
},
}
},
tooltip: {
show: true
},
formatter: function (name) {
let _index=0;
//console.log(_dataList)
_dataList.forEach((item,i)=>{
//console.log(item.value,name)
if(item.name == name){
_index = i;
}
});
let arr;
if(name=='应交人民币'){
arr = [
'{a|'+name+'}',
'{b|¥'+_dataList[_index].value+'}'
]
}else{
arr = [
'{a|'+name+'}',
'{c|¥'+_dataList[_index].value+'}'
]
}
//console.log(_index)
//console.log(_data1[_index].value)
// 注意,换行仍是使用 '\n'。
return arr.join('');
}
},
graphic:{
type:'text',
left:'center',
top:'23%',
z:2,
zlevel:100,
style:{
text:'1244',
x:100,
y:100,
textAlign:'center',
fill:'#77899c',
}
},
series: [
{
// name:'访问来源',
type:'pie',
radius: ['50%', '70%'],
// 绝对位置,相对于容器左侧 10px, 上侧 10 px
// position: [0, -50],
center: [100, 100],
avoidLabelOverlap: false,
hoverAnimation: false,
legendHoverLink:false,
silent:false,
label: {
normal:{
show: false,
position:'center',
formatter:(params)=>{
//var _total=0;
// _total+=params.data.value;
// dataTextArry.forEach((item,i)=>{
// _total+=item.value
// console.log(_total)
// });
//console.log(1);
// console.log(set)
return '1111';
},
},
textStyle:{
fontSize:20,
color:'green'
},
emphasis: {
show: false,
}
},
labelLine: {
normal: {
show: false
}
},
itemStyle:{
color:function(params){
//console.log('1',params)
var colorList=['#4ed139','#289cf4','#fdca57','#ff9e48','#2c3f58']
return colorList[params.dataIndex];
}
},
data:this.dataList
}
]
};
 
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
}
}
}
 

vue 使用Echarts 环形图 自定义legend formatter 富文本标签的更多相关文章

  1. 修改echarts环形图的牵引线及文字位置

    修改echarts环形图的牵引线及文字位置,下面代码及效果不仅如此,也包含了其它的效果哦.有问题可以留言. 根据echarts官方示例修改效果: 官方示例图: 修改效果图: 直接上代码:其它不多说. ...

  2. echarts柱图自定义为硬币堆叠的形式

    看这标题,可能会有一些人不太明白,那么直接上图,就是柱图展示形式如下图(兼容IE8) 要想实现这样展示效果.我们想用echarts直接实现不行的,即使是纹理填充也不可行的,但是我们可以借助echart ...

  3. echarts环形图,自定义说明文字

    一.代码 app.title = '已安装通讯盒电站统计'; option = { backgroundColor: '#0f0f31',//#0f0f31 title: { show:true, x ...

  4. echarts中关于自定义legend图例文字

    formatter有两种形式: - 模板 - 回调函数 模板 使用字符串模板,模板变量为图例名称 {name} formatter: 'Legend {name}' 回调函数 formatter: f ...

  5. echarts环形图点击旋转并高亮

    通过计算某个扇形区域的值占整个圆的百分比来得到这个扇形的角度,从而根据startAngle这个属性来设定图形的开始渲染的角度,使点击某个扇形时圆环旋转使之始终对准某个点. 期间考虑到某扇形区域太小点击 ...

  6. echarts环形图自动定位radius

    根据后台返回数据条数进行pie图radius定位:     var a = 100; var b = 0; var c = 0; var radius = []; for (var i in data ...

  7. Echarts环形进度使用 【1 简单的使用示例】

    使用中说明几点属性:  hoverAnimation:false,//此处查了好久属性//控制鼠标放置在环上时候的交互//这里一个简单的示例使用Echarts 环形图使用方式//常用于统计完成进度等等 ...

  8. vue 结合 Echarts 实现半开环形图

    Echarts 实现半开环形图 1.先看看实现的图 2.HTML部分 创建id 是 chart 的div标签. <div class="content-item"> & ...

  9. echarts白色实心环形图(空心饼图)的编写

    // 数据接入机构统计let myDom = document.getElementById('myChart');let myWidth = myDom.offsetWidth - 5; // 获取 ...

随机推荐

  1. ES-windos环境搭建(3)-kibana

    简介 Kibana是一个为ElasticSearch 提供的数据分析的 Web 接口.可使用它对日志进行高效的搜索.可视化.分析等各种操作. 下载 打开elasticseach官网,单击downloa ...

  2. 对于HDMI设备连接状态的监听

    对与最近主要做的是电视机盒子端的开发,其中涉及到设备的状态监听比较繁琐,所以对HDMI的连接状态的监听方法做个记录,方便后续查看. 主要通过两种方式: (1)比较常用的广播监听 注册一个动态广播来获取 ...

  3. ORM进阶操作

    一.聚合查询:aggregate(*args, **kwargs) aggregate()是QuerySet 的一个终止子句,意思是说,它返回一个包含一些键值对的字典.键的名称是聚合值的标识符,值是计 ...

  4. SQL SERVER 2008 系列问题:无法访问,混合模式

    转载请注明:http://www.cnblogs.com/dachen408/p/7878494.html 使用本机服务器名'.'登录,使用windows模式: 1.修改登录模式为混合模式:右键服务器 ...

  5. X和面试随笔

    第一次参加了面试,面试官很好,我写的笔试和回答的都很差劲,虽然技术方面的回答我想抽自己,但是人家还是要了,给了我一个机会,很感谢. 第一道题:设计一个进销存系统的表结构设计 1:老板每天要知道卖出的货 ...

  6. Javascript的一些经验总结

    JavaScript作用域 1.作用域 JavaScript的作用域与C.Java等语言不同,它不是以花括号包围的块级作用域,这个特性经常被大多数人忽视.例如下面代码,在大多数类C的语言中会出现变量未 ...

  7. php接受axios数据

    var params = { username: 'admin', password: '123456' } axios.post('test.php', params).then(res => ...

  8. vscode 插件整理

    己亥年  庚午月 癸巳日  宜入宅 忌婚嫁 1.Chinese (Simplified) Language Pack for Visual Studio Code 此中文(简体)语言包为 VS Cod ...

  9. 洛谷 P1120 小木棍[数据加强版]

    这道题可能是我做过的数据最不水的一道题-- 题目传送门 这题可以说是神剪枝,本身搜索并不算难,但剪枝是真不好想(好吧,我承认我看了题解)-- 剪枝: 用桶来存储木棍 在输入的时候记录下最长的木棍和最短 ...

  10. [CODEVS] 2193 数字三角形WW

    数字三角形必须经过某一个点,使之走的路程和最大 从必须经过的点,向上向下分别DP两次的和即为答案. 还有一种思路是把和必须经过点同一行的设为-INF,这样就一定(大概)不会选择它们了. //Write ...