没有堆叠的Highcharts百分比?

时间:2017-05-19 09:52:41

标签: highcharts percentage linechart

是否可以创建一个包含百分比样条的Highcharts图表,但没有它们堆叠?

我想在相对视图中显示线条,但我希望它们在百分比变化时穿越。

基本上,像这样:http://jsfiddle.net/dp6pjeo9/5/

plotOptions: {
    series: {
        pointStart: 2010,
         stacking: 'percent'

    }
},

但没有线条'堆叠'行为。堆叠对于线路来说真的很不方便,因为很难判断它们是否是“绝对的”。价值观或堆积的'值。

看到这里,顶线应该是2010年的黑线。

enter image description here

1 个答案:

答案 0 :(得分:2)

在将数据放入图表配置之前,您需要处理数据。

计算总和:

var data = [3, 5, 10, 15,25]
var data2 = [25,15, 10, 5, 0]

var sum = data.map((v, i) => v + data2[i]) // grab sums

计算百分比并设置数据:

    series: [{
    name: 'Installation',
    data: data.map((v, i) => ({
      y: v / sum[i] * 100,
      absoluteY: v
    }))
}, {
    name: 'Manufacturing',
    data: data2.map((v, i) => ({
      y: v / sum[i] * 100,
      absoluteY: v
    }))
}]

更改工具提示的pointFormat,使其显示绝对y值而不是百分比值

tooltip: {
  pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.absoluteY}</b><br/>'
},

示例:http://jsfiddle.net/dp6pjeo9/6/