echarts修改图例文字及样式

legend属性就是用来修改图例样式的

 
var data = [
            {value:40, name:'在线'},
            {value:20, name:'离线'},
            {value:40, name:'异常'}
        ]
 
option = {
    tooltip: {
        trigger: 'item',
        formatter: "{a} <br/>{b}: {c} ({d}%)"
    },
    //修改图例样式
    legend: {
                orient: 'vertical',  //图例列表的布局朝向(垂直排列)
                right:100,
                y: 'center',
                itemGap:30,
                itemWidth:8,
                padding:10,
                textStyle:{
                    fontSize: 12
                },
                align:'left',
                data: [
                    {
                        name:'在线',
                        icon:'circle'
                    },
                    {
                        name:'离线',
                        icon:'circle'
                    },{
                        name:'异常',
                        icon:'circle'
                    }
                ],
                formatter:  function(name){
                    var total = 0;
                    var target;
                    for (var i = 0, l = data.length; i < l; i++) {
                    total += data[i].value;
                    if (data[i].name == name) {
                        target = data[i].value;
                        }
                    }
                    var arr = [
                        '{a|'+name+' :}{b|'+((target/total)*100).toFixed(2)+'%}'
                        
                    ]
                    return arr.join('\n')
                },
                textStyle:{
                    rich:{
                        a:{
                            fontSize:20,
                            align:'left',
                            padding:[0,0,0,10]
                        },
                        b:{
                            fontSize:20,
                        
                            align:'right',
                            padding:[0,0,0,10],
                            lineHeight:25
                        }
                    }
                },
               backgroundColor: "#fff"
    },
    series: [
                {
                    name: '访问来源',
                    type: 'pie',
                    radius: [50, 80],
                    center: ['50%', '50%'],
                    label: {
                        normal: {
                            show: false
                        },
                        emphasis: {
                            show: false
                        }
                    },
                    data: [
                        {
                            value: 40,
                            name: '在线',
                            itemStyle: { normal: { color: "gray" } }
                        },
                        { 
                            value: 20, 
                            name: '离线', 
                            itemStyle: { normal: { color: "blue" } } },
                        { 
                            value: 40, 
                            name: '异常',
                            itemStyle: { normal: { color: "green" } } }
                    ]
                }
            ]
 
};

效果图

官网legend属性详细介绍

https://echarts.apache.org/zh/option.html#legend

legend属性参数简单介绍

 legend: {
        orient: 'vertical',
        x:'right',      //可设定图例在左(left)、右(right)、居中(center)、填写数字(填写100代表的是100px)
        y:'center',     //可设定图例在上(top)、下(bottom)、居中(center)、填写数字(填写100代表的是100px)
        padding:[0,50,0,0],   //可设定图例[距上方距离,距右方距离,距下方距离,距左方距离]
        data: ['在线','离线','异常']
    },

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值