当我选择一个列时,我想显示一个工具提示,其中只选择了特定堆栈的值,但是我显示了两个堆栈的所有值(2012和2013)。
我可以配置工具提示只显示一个堆栈值吗?
如果我不能这样做,我如何在工具提示(2012或2013)中显示堆栈标签?
我试图使用point.series.stack,但我得到一个未定义的值。有可能吗?
在堆积图表上显示工具提示的代码:
tooltip: {
formatter: function() {
var s = '<b>'+ this.x +'</b>';
$.each(this.points, function(i, point) {
s += '<br/>'+ point.series.name +': '+point.series.stack+':'+ point.y +'m';
});
return s;
},
shared : true
}
感谢您的帮助。
嗨再次
我按照你的建议,只显示同一堆栈的值。
我有这个格式化代码:
tooltip: {
formatter: function() {
var tip = '<b>'+ this.x ;
var stackSelected = this.point.series.options.stack;
tip += '/'+stackSelected+'</b>';
$.each(this.series.chart.series, function(i, s) {
if(s.options.stack == stackSelected){
tip += '<br/><br/>';
tip += '<b>'+s.name+' : </b>'+s.yAxis;
}
});
return tip;
},
shared : false
}
但是我有问题才能获得每个系列的价值。
你能帮帮我吗?
提前致谢
我忘记了完整的代码:http://jsfiddle.net/Kqumw/4/
答案 0 :(得分:1)
我可以得到我想要的
感谢您的提示。
这是我的工具提示代码:
tooltip: {
formatter: function() {
var tip = '<b>'+ this.x ;
var stackSelected = this.point.series.options.stack;
var categorySelected = this.point.category;
tip += '/'+stackSelected+'</b>';
tip += '<br/><br/>';
var index = 0;
$.each(this.series.chart.series, function(i, s) {
if(s.options.stack == stackSelected){
$.each(s.data, function(j, point){
if(point.category == categorySelected)
tip += '<b>'+s.name+' : </b>'+point.y+'<br>';
});
}
});
return tip;
},
shared : false
}
这是完整的代码http://jsfiddle.net/Kqumw/5/
答案 1 :(得分:0)
在为工具提示设置共享时,无法为同一类别显示不同的工具提示。如果要在工具提示中显示堆栈,请使用point.series.options.stack
,请参阅:http://jsfiddle.net/Kqumw/1/
如果您只想显示一个堆栈(悬停点的完整堆栈),则禁用共享(shared: false
)并在您自己的相应点上查找相同类别和相同堆栈(通过比较类别索引/来自点的名称和来自系列的堆栈ID)。