echarts中如何在圆环图的每一片上显示数据值

How to display data value on each slice of doughnut charts in echarts

我正在使用 echarts 来满足我的图表需求,并希望在切片上的圆环图中显示每个切片的 value/text。我已经完成了配置选项,但找不到解决方案。

这是echart提供的图表,也是我想要的:

我需要的:

在系列中,可以添加itemStyle

            itemStyle : {
                normal : {
                     label : {
                        show: true, position: 'inner',
                        formatter : function (params){
                              return  params.value + '%\n'
                        },
                    },
                    labelLine : {
                        show : false
                    }
                },

您可以在 here 在线尝试以下代码:

option = {
    tooltip : {
        trigger: 'item',
        formatter: "{a} <br/>{b} : {c} ({d}%)"
    },
    legend: {
        orient : 'vertical',
        x : 'left',
        data:['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']
    },
    toolbox: {
        show : true,
        feature : {
            mark : {show: true},
            dataView : {show: true, readOnly: false},
            magicType : {
                show: true, 
                type: ['pie', 'funnel'],
                option: {
                    funnel: {
                        x: '25%',
                        width: '50%',
                        funnelAlign: 'center',
                        max: 1548
                    }
                }
            },
            restore : {show: true},
            saveAsImage : {show: true}
        }
    },
    calculable : true,
    series : [
        {
            name:'访问来源',
            type:'pie',
            radius : ['50%', '70%'],
            itemStyle : {
                normal : {
                     label : {
                        show: true, position: 'inner',
                        formatter : function (params){
                              return  params.value + '%\n'
                        },
                    },
                    labelLine : {
                        show : false
                    }
                },
                emphasis : {
                    label : {
                        show : true,
                        position : 'center',
                        textStyle : {
                            fontSize : '30',
                            fontWeight : 'bold'
                        }
                    }
                }
            },
            data:[
                {value:335, name:'直接访问'},
                {value:310, name:'邮件营销'},
                {value:234, name:'联盟广告'},
                {value:135, name:'视频广告'},
                {value:1548, name:'搜索引擎'}
            ]
        }
    ]
};