使用amcharts中的自定义百分比修改渠道标签值

时间:2019-04-20 12:28:16

标签: label amcharts amcharts4

enter image description here 我想做两件事:

1)修改此漏斗图右侧以黄色突出显示的标签值。

2)更改百分比的计算方式:通常,我在每个类别的数据中都有一个“百分比”字段,我希望将其显示为突出显示的标签中的百分比。例如,类别“ second”的data.percentage为10%。因此,如图所示,需要显示10%。

代码:

var chart = am4core.create("chartdiv", am4charts.SlicedChart);
chart.hiddenState.properties.opacity = 0; 

chart.data = [{
    "name": "The first",
    "value": 600,
    "percentage": "100%"
}, {
    "name": "The second",
    "value": 300,
    "percentage": "10%"
}, {
    "name": "The third",
    "value": 200,
    "percentage": "10%"
}, {
    "name": "The fourth",
    "value": 180,
    "percentage": "35%"
}, {
    "name": "The fifth",
    "value": 50,
    "percentage": "20%"
}];

var series = chart.series.push(new am4charts.FunnelSeries());
series.colors.step = 2;
series.dataFields.value = "value";
series.dataFields.category = "name";
series.alignLabels = true;

series.labelsContainer.paddingLeft = 15;
series.labelsContainer.width = 200;

我发现该系列对象有一个名为标签的成员,该成员包含标签值,但我不知道如何在代码本身中对其进行修改。我该怎么办?

1 个答案:

答案 0 :(得分:2)

要修改标签的内容,请使用series.labels.template.text

您可以使用大括号引用其中的数据中的任何字段:

series.labels.template.text = "{category}: {percentage}";

{percentage}将替换为该特定切片数据的“百分比”中保存的任何值。

This article概述了文本中的数据占位符。