0
A
回答
1
一种方法是添加行和列的总和值的另一个系列。为避免默认着色和colorAxis
交互,可以更改dataLabel格式,工具提示格式和数据点属性的选项。
的jsfiddle:http://jsfiddle.net/9fp7sarx/6/
另一种解决办法是在相对侧上加入内衬轴,并与设置为求和值类别。值不会自动累加 - 您必须自行设置或自定义代码来设置值。
的jsfiddle:http://jsfiddle.net/8t2ugtm0/
xAxis: [{
categories: ['Alexander', 'Marie', 'Maximilian', 'Sophia', 'Lukas', 'Maria', 'Leon', 'Anna', 'Tim', 'Laura']
},{
linkedTo: 0,
opposite: true,
categories: [34,543,235,34,4,345,123,345,56,337],
labels: {
autoRotationLimit: 0
}
}],
yAxis: [{
categories: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'],
title: null
},{
linkedTo: 0,
opposite: true,
categories: [234,432,123,464,554],
title: null
}],
1
可以总结,通过添加额外的轴线(如卡茨珀提到的),但捕标签格式化器和中提取当前的x/y的值。然后迭代系列并用相同的坐标对所有点进行求和。
xAxis: [{
categories: ['Alexander', 'Marie', 'Maximilian', 'Sophia', 'Lukas', 'Maria', 'Leon', 'Anna', 'Tim', 'Laura']
},{
linkedTo: 0,
opposite: true,
tickLength: 0,
labels: {
formatter:function() {
var chart = this.chart,
each = Highcharts.each,
series = chart.series[0],
sum = 0,
x = this.value;
each(series.options.data, function(p, i) {
if(p[0] === x)
sum += p[2];
});
return sum;
}
}
}],
yAxis: [{
categories: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'],
title: null
},{
linkedTo: 0,
opposite: true,
tickLength: 0,
labels: {
formatter:function() {
var chart = this.chart,
each = Highcharts.each,
series = chart.series[0],
sum = 0,
x = this.value;
each(series.options.data, function(p, i) {
if(p[1] === x)
sum += p[2];
});
return sum;
}
},
title: null
}],
+0
您的解决方案有助于建立从客户端本身的总和。感谢你的回答 –
尼斯的想法,以适应现有的功能,建立了答案:) –