以下是一个使用ECharts绘制饼图,并使用formatter解析legend的示例代码:

HTML代码:

<div id='myChart' style='width: 600px;height:400px;'></div>

JavaScript代码:

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('myChart'));

// 指定图表的配置项和数据
var option = {
    title : {
        text: '饼图示例',
        subtext: '纯属虚构',
        x:'center'
    },
    tooltip : {
        trigger: 'item',
        formatter: "{a} <br/>{b} : {c} ({d}%)"
    },
    legend: {
        type: 'scroll',
        orient: 'vertical',
        right: 10,
        top: 20,
        bottom: 20,
        data: ['邮件营销','联盟广告','视频广告','直接访问','搜索引擎'],
        formatter: function (name) {
            var data = option.series[0].data;
            var total = 0;
            for (var i = 0; i < data.length; i++) {
                total += data[i].value;
            }
            for (var i = 0; i < data.length; i++) {
                if (name === data[i].name) {
                    return name + '   ' + ((data[i].value / total) * 100).toFixed(2) + '%';
                }
            }
        },
        textStyle: {
            fontSize: 12
        }
    },
    series : [
        {
            name: '访问来源',
            type: 'pie',
            radius : '55%',
            center: ['50%', '60%'],
            data:[
                {value:335, name:'直接访问'},
                {value:310, name:'邮件营销'},
                {value:234, name:'联盟广告'},
                {value:135, name:'视频广告'},
                {value:1548, name:'搜索引擎'}
            ],
            itemStyle: {
                emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                }
            }
        }
    ]
};

// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);

在这个示例代码中,我们定义了一个formatter函数,该函数用于解析legend中的数据并将其格式化为'名称 百分比'的形式。通过在legend的配置项中设置formatter属性,我们可以指定要使用的formatter函数。

在这个例子中,我们使用了饼图,数据中包含了5个值,每个值都有一个名称和一个数值。我们使用饼图来展示这些数据,并使用legend来显示每个值的名称。formatter函数会根据数据中的数值计算出每个值所占的百分比,并将其添加到legend中的每个名称后面。

最后,我们使用setOption方法来将配置项应用于图表,并在HTML页面中显示图表。

ECharts饼图Legend使用Formatter解析数据示例

原文地址: https://www.cveoy.top/t/topic/lx1E 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录