You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Highcharts饼图图例中添加带百分比的y值

嗨,我来帮你搞定饼图图例显示百分比的问题~

要实现图例里显示「扇区名称-百分比」的格式,只需要在Highcharts的配置里自定义图例标签的格式化函数就行,下面是修改后的完整代码,我标了关键部分:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<div id="container" style="height: 400px; width: 600px;"></div>

<script>
Highcharts.chart('container', {
    chart: {
        type: 'pie'
    },
    title: {
        text: '你的饼图标题'
    },
    plotOptions: {
        pie: {
            allowPointSelect: true,
            cursor: 'pointer'
        }
    },
    // 关键配置:自定义图例显示格式
    legend: {
        labelFormatter: function() {
            // this指向当前图例对应的饼图数据点
            // Highcharts会自动计算好百分比,用numberFormat处理成整数格式
            return `${this.name} - ${Highcharts.numberFormat(this.percentage, 0)}%`;
        }
    },
    series: [{
        name: '数值',
        colorByPoint: true,
        data: [
            { name: '黄色扇区', y: 12 },
            { name: '红色扇区', y: 10 },
            { name: '蓝色扇区', y: 33 }
            // 可以继续添加其他扇区数据
        ]
    }]
});
</script>

关键说明:

  • legend.labelFormatter是Highcharts提供的图例文本自定义钩子,函数里的this对应每个饼图数据点。
  • this.percentage是Highcharts自动计算的该数据点占总和的百分比数值,不用你手动计算~
  • Highcharts.numberFormat(this.percentage, 0)用来把百分比格式化为整数(如果需要保留1位小数,把第二个参数改成1即可)。

这样修改后,图例就会显示成你想要的「黄色扇区-12%」「红色扇区-10%」的样式啦!

内容的提问来源于stack exchange,提问作者A prasad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:36:05