(function () {
var script = document.getElementById('highcharts-script');
function addChart() {
function parseData(completeHandler, chartOptions) {
try {
var dataOptions = {
"seriesMapping": [
{
"x": 0
},
{
"x": 0
}
],
"columnTypes": [
"date",
"float",
"float"
],
"csv": "Date,Online,Phone\n1441324800000,-3,\n1441497600000,10,\n1442102400000,3,\n1442448000000,-2,\n1442707200000,7,\n1442880000000,3,\n1443312000000,7,\n1443398400000,,19\n1443657600000,-4,\n1443916800000,4,\n1444176000000,5,\n1444521600000,9,\n1444608000000,2,\n1445126400000,6,\n1445212800000,3,\n1445212800000,,16\n1445299200000,2,\n1445558400000,3,\n1445731200000,6,\n1445731200000,7,\n1445904000000,3,\n1446076800000,-2,\n1446336000000,6,\n1446940800000,8,\n1447200000000,-5,\n1447545600000,5,\n1447718400000,0,\n1447718400000,3,\n1447891200000,-4,\n1448150400000,7,\n1448323200000,0,\n1448755200000,4,\n1449100800000,-2,\n1449360000000,4,\n1449964800000,1,\n1449964800000,,21\n1450051200000,,26\n1450310400000,4,\n1450396800000,-1,\n1450569600000,7,\n1452384000000,6,\n1452729600000,-3,\n1452902400000,-4,\n1452988800000,2,\n1453334400000,4,\n1453593600000,,18\n1453593600000,0,\n1453680000000,,19\n1453939200000,-4,\n1454198400000,3,\n1454544000000,-9,\n1454803200000,-1,\n1455408000000,,8\n1455580800000,,18\n1455926400000,,15\n1456099200000,,13\n1456099200000,2,\n1456185600000,3,\n1456185600000,-1,\n1456358400000,3,\n1456358400000,-4,\n1456704000000,0,\n1456790400000,2,\n1456876800000,5,\n1456963200000,3,\n1457222400000,-1,\n1457827200000,2,\n1457913600000,-2,\n1458432000000,-2,\n1458432000000,,7\n1458604800000,,8\n1458777600000,2,\n1459123200000,2,\n1459209600000,-4,\n1459209600000,0,\n1459468800000,-4,\n1459641600000,,7\n1459641600000,1,\n1459728000000,1,\n1459987200000,2,\n1460246400000,,7\n1460246400000,-3,\n1460332800000,0,\n1460419200000,0,\n1460592000000,4,\n1460592000000,1,\n1460851200000,,12\n1460851200000,,7\n1460851200000,-1,\n1460937600000,,10\n1461024000000,,11\n1461456000000,-2,\n1461456000000,,8\n1461628800000,,7\n1461628800000,-1,\n1461628800000,-2,\n1461801600000,3,\n1461888000000,-3,\n1461888000000,1,\n1461888000000,0,\n1462233600000,-1,\n1462492800000,2,\n1462665600000,-2,\n1463011200000,-2,\n1463011200000,,-3\n1463011200000,-3,\n1463270400000,,8\n1463270400000,-4,\n1463270400000,,15\n1463356800000,,18\n1463443200000,,11\n1463443200000,4,\n1463616000000,4,\n1463875200000,,20\n1463875200000,0,\n1464048000000,,6\n1464048000000,0,\n1464134400000,-1,\n1464480000000,,-3\n1464480000000,,9\n1464566400000,-3,\n1464652800000,0,\n1464912000000,-4,\n1464912000000,2,\n1465084800000,,12\n1465084800000,-5,\n1465171200000,1,\n1465430400000,-10,\n1465516800000,2,\n1465516800000,-1,\n1465689600000,,5\n1465776000000,,-5\n1465776000000,-5,\n1465776000000,-7,\n1465776000000,-7,\n1465776000000,,1\n1465862400000,,-6\n1465948800000,6,\n1465948800000,,-10\n1465948800000,0,\n1465948800000,,-3\n1466035200000,-2,\n1466121600000,1,\n1466121600000,0,\n1466208000000,,3\n1466294400000,-2,\n1466294400000,8,\n1466380800000,1,"
};
dataOptions.sort = true
dataOptions.complete = completeHandler;
Highcharts.data(dataOptions, chartOptions);
} catch (error) {
console.log(error);
completeHandler(undefined);
}
}
var shareUrl = 'https://app.everviz.com/show/egocef';
var encodedUrl = encodeURIComponent(shareUrl);
var template = {
chart: {
renderTo: 'highcharts-egocef'
},
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": "Remain lead (% points above Leave)"
}
},
"exporting": {
"enabled": false
},
"credits": {
"href": "https://whatukthinks.org/eu/",
"text": "Source: What UK Thinks"
},
"series": [
{
"color": "#003399",
"index": 0
},
{
"color": "#f22424",
"index": 1
}
],
"tooltip": {
"enabled": false
},
"title": {
"text": "Phone v online: How the polls differ"
},
"chart": {
"type": "scatter"
}
};
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);
}
}());