所以问题是:是否可以设置一个具有总值的变量(例如图像:2.600),插入系列值并获得总值相关的百分比? 或者在替代方案中直接设置百分比?
示例1(最喜欢的解决方案):
var total = 2.600
series: [{
name: 'Serie1',
data: [1560, 590, 1112, 2030]
}, {
name: 'Serie2',
data: [260, 590, 1112, 435]
}, {
name: 'Serie3',
data: [780, 1770, 556, 435]
}]
因此它会自动计算百分比。
示例2:
series: [{
name: 'Serie1',
data: [60%, 20%, 40%, 70%]
}, {
name: 'Serie2',
data: [10%, 20%, 40%, 15%]
}, {
name: 'Serie3',
data: [30%, 60%, 20%, 15%]
}]
答案 0 :(得分:1)
对于y值,仅接受数字。可以使用stackLabels
作为总值,并使用dataLabels
的{{3}}来返回总计的百分比 - 因为堆叠系列的this.total
可用,这不应该是一个问题。
yAxis: {
reversedStacks: false,
stackLabels: {
enabled: true,
align: 'left',
y: -20,
x: 100
}
},
plotOptions: {
bar: {
stacking: 'normal',
dataLabels: {
enabled: true,
formatter: function () {
return Math.round(this.y / this.total * 100) + '%';
}
}
}
},
示例:formatter