Highcharts Demo
author(s): Torstein Hønsi
by anikettiwari
HTML
<script src="http://code.highcharts.com/highcharts.src.js"></script>
<div id="container" style="height: 400px"></div>
JavaScript
$(function() {
var data = [[144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2], [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]];
var trend = [];
for (var i = 0; i < data[0].length; i++) {
trend.push(data[0][i] + data[1][i]);
}
function updateTrendLine(chart) {
var newTrend = [];
for (var i = 0; i < trend.length; i++) {
newTrend.push(0);
} /* default values == 0 */
$(chart.series).each(function(i, e) {
if (e.type === 'column' && e.visible) { /* only visible columns */
$(e.data).each(function(ii, ee) {
newTrend[ii] = newTrend[ii] + ee.y; /* update trend */
});
}
});
chart.get('trend').setData(newTrend); /* set new data for line trend */
}
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'column'
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
plotOptions: {
series: {
stacking: 'normal',
events: {
hide: function() {
updateTrendLine(this.chart);
},
show: function() {
updateTrendLine(this.chart);
}
}
}
},
tooltip: {
shared: true
},
series: [{
name: "Mango sale",
data: data[0],
},
{
name: "Banana sale",
data: data[1]},
{
name: "Sales trend",
data: trend,
id: 'trend',
type: 'spline'}]
});
});