我想访问系列 dataLabels 中的另一个系列行数据。这是我的代码。categoriesarr = [1,2,3,4,5];noofloandisbursed = [10, 20, 30, 40, 50];pdo = [9, 18, 27, 40, 49];var chart = new Highcharts.Chart({ chart: { renderTo: 'disbursement' }, title: { text: '' }, subtitle: { text: '' }, xAxis: { categories: categoriesarr }, tooltip: { pointFormat: '<b>{point.y}</b>' }, legend: { layout: 'vertical', align: 'right', verticalAlign: 'top', x: -40, y: 0, floating: true, borderWidth: 1, backgroundColor: ((Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#fff'), shadow: true }, series: [{ name: 'No. Of Loan Disbursed', type: 'column', data: noofloandisbursed }, { name: 'Pre-Disbursement Orientation', type: 'column', data: pdo, dataLabels: { enabled: true, formatter: function(e) { //return ((this.point.y/series[0].point.y)*100) + '%'; } } }] });我想在 dataLabels 连接中显示 (series 2 value / series 1 value) * 100 的结果,仅在第二个系列中使用 % 。不幸的是,我无法访问系列 1 的 y 点值。当我尝试时series[0].yData,它返回整个数组,而不是与第二行匹配的特定行。我也尝试传递数组,但它不起作用。需要解决这个问题。
1 回答
慕的地10843
TA贡献1785条经验 获得超8个赞
您可以通过index以下方式从第一个系列中找到要点:
series: [{
...
},
{
...,
dataLabels: {
enabled: true,
formatter: function(e) {
return (
(this.point.y /
this.series.chart.series[0].points[this.point.index].y) *
100) + '%';
}
}
}
]
现场演示: http : //jsfiddle.net/BlackLabel/rdwxc382/
API参考: https : //api.highcharts.com/highcharts/series.column.dataLabels.formatter
添加回答
举报
0/150
提交
取消