Highcharts Demo
author(s): Torstein Hønsi
by Geo George
HTML
<script src="https://code.highcharts.com/maps/highmaps.js"></script>
<script src="https://code.highcharts.com/maps/modules/data.js"></script>
<script src="https://code.highcharts.com/maps/modules/exporting.js"></script>
<script src="https://code.highcharts.com/mapdata/custom/world.js"></script>
<div id="container"></div>
<button id="getselectedpoints" disabled>Get selected points</button>
CSS
#container {
height: 500px;
min-width: 310px;
max-width: 800px;
margin: 0 auto;
}
.loading {
margin-top: 10em;
text-align: center;
color: gray;
}
JavaScript
Highcharts.getJSON('https://cdn.jsdelivr.net/gh/highcharts/[email protected]/samples/data/world-population-density.json', function (data) {
var newdata = [
{
//me: "Canada",
//so-a3": "CAN",
lat: 54.41647439573804,
lon: 54.41647439573804-119.51446651884729,
},
];
// Initialize the chart
const chart = Highcharts.mapChart('container', {
title: {
text: 'Allow point select'
},
legend: {
title: {
text: 'Population density per km²'
}
},
plotOptions: {
series: {
states: {
hover: {
color: '#a4edba'
},
select: {
color: 'red',
borderColor: 'black',
dashStyle: 'dot'
}
},
point: {
events: {
select: function () {
const text = 'Selected ' + this.name + ' (' + this.value + '/km²)',
chart = this.series.chart;
if (!chart.selectedLabel) {
chart.selectedLabel = chart.renderer
.label(text, 0, 320)
.add();
} else {
chart.selectedLabel.attr({
text: text
});
}
},
unselect: function () {
const text = 'Unselected ' + this.name + ' (' + this.value + '/km²)',
chart = this.series.chart;
if (!chart.unselectedLabel) {
chart.unselectedLabel = chart.renderer
...