Highcharts Demo
author(s): Torstein Hønsi
by Dogbert
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/PapaParse/4.1.2/papaparse.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/data.js"></script>
<script src="https://code.highcharts.com/modules/drilldown.js"></script>
<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
JavaScript
var csv = "COG,January,February,March,April,YTD\n2016,2.28,-0.95,5.29,4.33,10.95\n2015,4.7,0.32,2.63,1.79,9.44\n2014,-1.41,-1.68,4.09,4.13,5.13\n2013,5.06,0.22,4.96,2.77,13.01\n2012,7.88,6.25,-0.75,6.65,20.03\n2011,0.4,7.82,-0.71,-0.48,7.03\n2010,3.85,4.72,-1.98,6.42,13.01";
var data = Papa.parse(csv).data;
console.log(data);
var years = [];
var years = data.slice(1).map(d => ({
name: d[0],
drilldown: d[0],
y: +d[d.length - 1]
}));
var drilldown = data.slice(1).map(d => ({
name: d[0],
id: d[0],
data: d.slice(1, d.length - 2).map((datum, i) => (
[data[0][i + 1], +datum]
))
}));
$(function () {
// Create the chart
$('#container').highcharts({
chart: {
type: 'column'
},
title: {
text: 'Browser market shares. January, 2015 to May, 2015'
},
subtitle: {
text: 'Click the columns to view versions. Source: <a href="http://netmarketshare.com">netmarketshare.com</a>.'
},
xAxis: {
type: 'category'
},
yAxis: {
title: {
text: 'Total percent market share'
}
},
legend: {
enabled: false
},
plotOptions: {
series: {
borderWidth: 0,
dataLabels: {
enabled: true,
format: '{point.y:.1f}%'
}
}
},
tooltip: {
headerFormat: '<span style="font-size:11px">{series.name}</span><br>',
pointFormat: '<span style="color:{point.color}">{point.name}</span>: <b>{point.y:.2f}%</b> of total<br/>'
},
series: [{
name: 'Brands',
colorByPoint: true,
data: years
}],
drilldown: {
series: drilldown
}
});
});