Highcharts: Shared tooltip formatter this.points[i]
formatting, highcharts, javascript, jquery
Solution
When you want to display the individual data points for stacked graphs with a shared tooltip, you have to loop through the individual points and build up the tooltip markup.
tooltip: {
shared: true,
formatter: function () {
var points = this.points;
var pointsLength = points.length;
var tooltipMarkup = pointsLength ? '<span style="font-size: 10px">' + points[0].key + '</span><br/>' : '';
var index;
var y_value_kwh;
for(index = 0; index < pointsLength; index += 1) {
y_value_kwh = (points[index].y/1000).toFixed(2);
tooltipMarkup += '<span style="color:' + points[index].series.color + '">\u25CF</span> ' + points[index].series.name + ': <b>' + y_value_kwh + ' kWh</b><br/>';
}
return tooltipMarkup;
}
}
Here's a working example: http://jsbin.com/qatufetiva/1/edit?js,output
Problem
How can I get the tooltip seen in the image below to be displayed as shared? You might want to take a look at the Highcharts API Reference (especially the info about the shared option): http://api.highcharts.com/highcharts#tooltip.formatter Here's the jsfiddle: https://jsfiddle.net/9bw1qLj4/ for fullscreen: https://jsfiddle.net/9bw1qLj4/embedded/result/ I tried this, but it didn't work: ``` tooltip: { shared: true, formatter: function () { var y_value_kwh = (this.points[i].y/1000).toFixed(2); return '<span style="font-size: 10px">' + this.key + '</span><br/>' + '<span style="color:' + this.points[i].series.color + '">\u25CF</span> ' + this.points[i].series.name + ': <b>' + y_value_kwh + ' kWh</b><br/>'; }, }, ``` Current code: ``` tooltip: { //shared: true, formatter: function () { var y_value_kwh = (this.y/1000).toFixed(2); return '<span style="font-size: 10px">' + this.key + '</span><br/>' + '<span style="color:' + this.series.color + '">\u25CF</span> ' + this.series.name + ': <b>' + y_value_kwh + ' kWh</b><br/>'; }, }, ``` Current output: