Highcharts - 如何从工具提示访问点的多轴类别
Highcharts - how to access category of multiple axis of the point from tooltip
我有一个图表,其中 两个分类的 y 轴 ,第二个链接到第一个(使用 linkedTo
选项)。我想 在工具提示中显示两个轴的点类别 但我无法找到正确显示它的方法。我找到了一种显示主 yAxis 的所有类别的方法,但无法将输出限制为仅点的类别,也无法显示第二个轴的类别。
这里是fiddle,如果你愿意,可以一起玩:http://jsfiddle.net/75444q2n/
PS:此代码可能不是很干净,因为它是从 Rcharts(一个 R 包,可以从 R 代码获取 JS 可视化)生成的。
您可以使用tooltip.formatter (API: http://api.highcharts.com/highcharts#tooltip.formatter) 并获取点的y 从类别数组或直接从图表中获取相应的类别。
示例:http://jsfiddle.net/4w89vL75/2/
$(function () {
var cat2 = ['Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
$('#container').highcharts({
tooltip: {
formatter: function () {
return 'First: ' + this.series.chart.yAxis[0].categories[this.y] +
'<br>Second: ' + cat2[this.y];
}
},
yAxis: [{
categories: ['Jan', 'Feb', 'Mar', 'Apr','May', 'Jun']
},{
linkedTo: 0,
opposite: true,
categories: cat2
}],
series: [{
data: [5,3,2,4,3]
}, {
yAxis: 1,
data: [2,2,3,4,5]
}]
});
});
如前所述,您应该使用 tooltip.formatter
函数 (http://api.highcharts.com/highcharts#tooltip.formatter)。
在你的情况下是
"formatter": function () {
return "I'd like to have first yAxis category here<br>"
+ "<span style=\"font-weight: bold; color:" + this.series.color + "\">"
+ this.series.chart.yAxis[0].categories[this.y] + "</span><br/>"
+ "And second yAxis category here. <br/>"
+ "<span style=\"font-weight: bold; color:" + this.series.color + "\">"
+ this.series.chart.yAxis[1].categories[this.y] + "</span><br/>"
+ "x value: " + this.point.x + "<br/>"
},
我有一个图表,其中 两个分类的 y 轴 ,第二个链接到第一个(使用 linkedTo
选项)。我想 在工具提示中显示两个轴的点类别 但我无法找到正确显示它的方法。我找到了一种显示主 yAxis 的所有类别的方法,但无法将输出限制为仅点的类别,也无法显示第二个轴的类别。
这里是fiddle,如果你愿意,可以一起玩:http://jsfiddle.net/75444q2n/
PS:此代码可能不是很干净,因为它是从 Rcharts(一个 R 包,可以从 R 代码获取 JS 可视化)生成的。
您可以使用tooltip.formatter (API: http://api.highcharts.com/highcharts#tooltip.formatter) 并获取点的y 从类别数组或直接从图表中获取相应的类别。 示例:http://jsfiddle.net/4w89vL75/2/
$(function () {
var cat2 = ['Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
$('#container').highcharts({
tooltip: {
formatter: function () {
return 'First: ' + this.series.chart.yAxis[0].categories[this.y] +
'<br>Second: ' + cat2[this.y];
}
},
yAxis: [{
categories: ['Jan', 'Feb', 'Mar', 'Apr','May', 'Jun']
},{
linkedTo: 0,
opposite: true,
categories: cat2
}],
series: [{
data: [5,3,2,4,3]
}, {
yAxis: 1,
data: [2,2,3,4,5]
}]
});
});
如前所述,您应该使用 tooltip.formatter
函数 (http://api.highcharts.com/highcharts#tooltip.formatter)。
在你的情况下是
"formatter": function () {
return "I'd like to have first yAxis category here<br>"
+ "<span style=\"font-weight: bold; color:" + this.series.color + "\">"
+ this.series.chart.yAxis[0].categories[this.y] + "</span><br/>"
+ "And second yAxis category here. <br/>"
+ "<span style=\"font-weight: bold; color:" + this.series.color + "\">"
+ this.series.chart.yAxis[1].categories[this.y] + "</span><br/>"
+ "x value: " + this.point.x + "<br/>"
},