0

我有这个堆积柱形图。演示

        tooltip: {
            formatter: function() {
                return '<b>'+ this.x +'</b><br/>'+
                    this.series.name +': '+ this.y +'<br/>'+
                    'Total: '+ this.point.stackTotal;
            }
        },

我想当我悬停第一列时,它应该显示:

John: 3
Bob: 5
Total: 8

无论我将悬停在同一列上的堆栈如何,它都应该显示 3 个这些值。

怎么做?我认为我的解决方案是 get (this.total - this.y) 但它没有显示正确的值。

4

2 回答 2

0

在堆栈中显示值的常规方法是按如下方式定义工具提示:

tooltip:
{
    shared:true
},

http://jsfiddle.net/RG8YT/

我不确定这是否足以满足您想要的,就像在您的图表中那样,它显示了所有值,而不仅仅是堆栈中的值。

这里有一个问题:关于将总计添加到共享工具提示的工具提示中的 highchart total 。

于 2013-07-15T09:31:37.850 回答
0

如果您只想在“堆栈的一部分”中求和,我的意思是左/右,您可以对元素进行部分求和。

 var indexS = this.series.index,
                    indexP = this.point.x,
                    series = this.series.chart.series,
                    out;


                out = '<b>'+ this.x +'</b><br/>'+
                    this.series.name +': '+ this.y +'<br/>';

                switch(indexS) {
                    case 0:
                        out += series[1].name + ': ' + series[1].data[indexP].y + '<br/>';
                        break;
                    case 1:
                         out += series[0].name + ': ' + series[0].data[indexP].y + '<br/>';                            break;
                    case 2:
                         out += series[3].name + ': ' + series[3].data[indexP].y + '<br/>';
                        break;
                    case 3:
                         out += series[2].name + ': ' + series[2].data[indexP].y + '<br/>';
                        break;
                }


                out += 'Total: '+ this.point.stackTotal;

                return out

http://jsfiddle.net/sbochan/3Utat/7/

于 2013-07-15T10:12:01.950 回答