(function () {
var script = document.getElementById('highcharts-script');
function addChart() {
function parseData(completeHandler, chartOptions) {
try {
var dataOptions = {
"seriesMapping": [
{
"x": 0
},
{
"x": 0
},
{
"x": 0
}
],
"columnTypes": [
"float",
"float",
"float",
"float"
],
"csv": "categories,Inflow,Outflow,Net\n1991,21,-27,-6\n1992,14,-27,-13\n1993,15,-18,-3\n1994,21,-18,3\n1995,11,-16,-5\n1996,16,-22,-6\n1997,14,-28,-14\n1998,20,-22,-2\n1999,27,-13,14\n2000,28,-23,5\n2001,27,-24,3\n2002,25,-32,-7\n2003,27,-23,4\n2004,37,-29,8\n2005,38,-30,8\n2006,38,-26,12\n2007,40,-28,12\n2008,44,-25,19\n2009,47,-27,20\n2010,47,-19,28\n2011,40,-25,15"
};
dataOptions.sort = true
dataOptions.complete = completeHandler;
Highcharts.data(dataOptions, chartOptions);
} catch (error) {
console.log(error);
completeHandler(undefined);
}
}
var shareUrl = 'https://app.everviz.com/show/yvikez';
var encodedUrl = encodeURIComponent(shareUrl);
var template = {
chart: {
renderTo: 'highcharts-yvikez'
},
navigation: {
menuItemStyle: {
fontFamily: Highcharts.SVGRenderer.prototype.getStyle().fontFamily,
padding: '2px 10px'
}
},
exporting: {
buttons: {
contextButton: {
menuItems: [{
text: '' +
'Share on Facebook'
}, {
text: '' +
'Share on Google+'
}, {
text: '' +
'Share on Twitter'
}, {
text: '' +
'Share on LinkedIn'
}, {
separator: true
}]
.concat(Highcharts.getOptions().exporting.buttons.contextButton.menuItems)
.concat([{
separator: true
}, {
text: '' + 'Edit chart'
}, {
text: '' + 'Create chart'
}])
}
}
}
};
var chartOptions = {
"yAxis": {
"title": {
"text": "Thousands"
}
},
"credits": {
"href": null,
"text": "\u003cb\u003eSource\u003c/b\u003e: ONS, Long-Term International Migration Estimates, Table 2.06"
},
"series": [
{
"index": 0
},
{
"index": 1
},
{
"index": 2
}
],
"subtitle": {
"text": "Chart provided by www.migrationobservatory.ox.ac.uk"
},
"title": {
"text": "Immigration, emigration, and net migration to Scotland, 1991-2011"
},
"chart": {
"type": "line"
}
};
parseData(function (dataOptions) {
// Merge series configs
if (chartOptions.series && dataOptions) {
Highcharts.each(chartOptions.series, function (series, i) {
chartOptions.series[i] = Highcharts.merge(series, dataOptions.series[i]);
});
}
var options = Highcharts.merge(dataOptions, chartOptions, template);
var chart = new Highcharts['Chart'](options);
}, chartOptions);
}
// Load the Highcharts script if undefined, and add the chart
if (typeof Highcharts !== 'undefined') {
addChart();
} else if (script) {
script.deferredCharts.push(addChart);
} else {
script = document.createElement('script');
script.id = 'highcharts-script';
script.src = '//app.everviz.com/resources/js/highstock-cloud-5.0.7.js';
script.type = 'text/javascript';
script.deferredCharts = [addChart];
script.onload = function () {
// Prevent double firing of event in IE9/IE10
if (!script.chartsAdded) {
script.chartsAdded = true;
while(script.deferredCharts.length) {
script.deferredCharts.shift()();
}
}
};
script.onreadystatechange = function() {
if (this.readyState == 'complete' || this.readyState == 'loaded') {
script.onload();
}
};
document.getElementsByTagName('head')[0].appendChild(script);
}
}());