In HighCharts, I tried with Synchronized multi charts as explained in the Fiddle. It works well if provided all charts have equal width.
$('#container').bind('mousemove touchmove touchstart', function (e) {
var chart,
point,
i,
event;
for (i = 0; i < Highcharts.charts.length; i = i + 1) {
chart = Highcharts.charts[i];
event = chart.pointer.normalize(e.originalEvent); // Find coordinates within the chart
point = chart.series[0].searchPoint(event, true); // Get the hovered point
if (point) {
point.highlight(e);
}
}
});
But If I change the width of the charts to different sizes, then tooltip does not sync properly. You can check this Fiddle.
Is there any way to sync even if charts have different sizes?
If you have data with the same x coordinates you can catch the point from the hovered chart and then find the corresponded points in the other two charts - and call
highlight()
.Bind the mousemove event
example: http://jsfiddle.net/5vcc6z40/