echarts自定义图例legend文字和样式

摘要:
话不多说,让我们从渲染开始。完成这个图并不难,主要是因为下面的图例比较困难,需要定制。让我们从官方文件中寻找想法。关于传说的官方文件。格式化程序如下:1.此处的图例文本包含两个变量,但格式化程序提供的变量模板只有名称2.两个变量的样式不同3.有两种应用程序格式化程序:一种是模板变量,但是回调函数。显然,只有回调函数才能满足我们的需求。自定义转换如下:varpieChartData=[{value:1,名称:“System Tools”},{value:3,名称:‘Curriculum’},{value:0,名称为‘Feedback’};{value:43,名称为“Other”}]格式:=˃{letdata=this.pieChartData;lettotal=0;lettarget;for{total+=data[i].value;if{target=data[i].value}letarr=[“{a |”+名称+“}”,“{b |”+.toFixed+“%}”]returnarr。join(“”)},textStyle:{rich:{a:{fontSize:16,verticalAlign:'top',align:'center',padding:[0,15,28,0]},b:{fontSize:14,align:'center],padding:[0,15,0,0],lineHeight:25}}

话不多说,先上效果图。

echarts自定义图例legend文字和样式第1张

要完成这个图并不难,主要是下面那个图例比较难,需要定制。

让我们从官方文档找找思路,官方文档关于legend.formatter是这样的:链接在这

echarts自定义图例legend文字和样式第2张

难点在于:

1.这里的图例文本包含两个变量,而formatter提供的变量模板只有name
2.两个变量的样式各不相同
3.对齐,换行与居中的应用

formatter有两种:一是模板变量,而是回调函数。

显然,只有回调函数能够满足我们的需要。

自定义改造如下:

var pieChartData = [
    {value:1, name:'系统工具'},
    {value:3, name:'课程表'},
    {value:0, name:'意见反馈'},
    {value:43, name:'其他'}
]


formatter:  (name)=>{
    let data=this.pieChartData;
    let total = 0;
    let target;
    for (let i = 0, l = data.length; i < l; i++) {
        total += data[i].value;
        if (data[i].name == name) {
            target = data[i].value;
        }
    }
    let arr = [
        '{a|'+name+'}',
        '{b|'+((target/total)*100).toFixed(2)+'%}'
    ]
    return arr.join('
')
},
    textStyle:{
    rich:{
        a:{
            fontSize:16,
                verticalAlign:'top',
                align:'center',
                padding:[0,15,28,0]
        },
        b:{
            fontSize:14,
                align:'center',
                padding:[0,15,0,0],
                lineHeight:25
        }
    }
}

免责声明:文章转载自《echarts自定义图例legend文字和样式》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇tcpdump移植和使用win10 Jmeter5.1进行websocet压力测试笔记 服务端 net core2.2下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

R语言绘图如何把图例绘制在外边及调整图例位置

1、 par(mai=c(2,2,2,2)) plot(1:10) legend(1,-1,"aaa",xpd=TRUE,box.lwd = 3, pch=15) legend(11,11,"bbb",xpd=TRUE,box.lwd = 3, pch=15) 2、 par(mai=c(2,2,2,2)) plot(1:10)...

echarts使用 图例改变和默认不选中

  最近可视化图表的需求比较多,图表基本上都在用echarts制作,简单写下比较常用的属性   1.示例图效果:       title(标题)  toolbox(工具箱)  tooltip(提示)  lengend(图例) dataZoom(数据缩放区域)  dataRange(值域)  grid(绘图网络)  axis(坐标轴)  line() 图例(...

OUT 了??还没玩转报表超链接

还不知道报表可以实现超链接?还玩不转超链接?加入润乾战队,润乾带你开黑,揭开报表超链接的面纱,好好看清它的真面目。 其实报表实现超链接已经很久了,只需要你停下脚步看看它,你就会发现超链接的美,一向不搞事情只搞技术的润乾早就实现了在报表中加入链接功能,无论是普通报表还是附有统计图的报表都可以很轻松的通过在报表中加入超链接实现钻取功能,拥有一份展现清晰并且内容...

Qt开发技术:QtCharts(一)QtCharts基本介绍以及图表框架详解

若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062本文章博客地址:https://blog.csdn.net/qq21497936/article/details...

G2使用中的一些坑:自定义图例、混合图形、label 默认隐藏等问题

一、自定义图例 legend 一般自定义图例较多的使用在混合图形里,以 G2 官网的这个 chart 为例,通过定制 legend 来显示自己定义的图例。 注意:legend 的配置项里一定要设置 custom: true ,自己在写的时候过多关注多个图形叠加使用,没有注意设置 custom,结果图表显示一直有问题,图例也显示不出来,折腾到怀疑人生。 二...

echarts图例的位置及大小,环图中间字

https://blog.csdn.net/qq_34790644/article/details/89308738 Echarts饼状图属性设置大全 https://blog.csdn.net/sleepwalker_1992/article/details/82532210...