Simple flight routes
author(s):
Torstein Hønsi
by prateekbansal07
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js"></script>
<script src="https://code.highcharts.com/maps/highmaps.js"></script>
<script src="https://code.highcharts.com/maps/modules/exporting.js"></script>
<script src="https://code.highcharts.com/maps/modules/offline-exporting.js"></script>
<script src="https://code.highcharts.com/maps/modules/accessibility.js"></script>
<div id="container"></div>
CSS
#container {
height: 680px;
min-width: 310px;
max-width: 800px;
margin: 0 auto;
}
.loading {
margin-top: 10em;
text-align: center;
color: gray;
}
JavaScript
(async () => {
const mapData = await fetch(
'https://code.highcharts.com/mapdata/countries/gb/gb-all.topo.json'
).then(response => response.json());
// Initialize the chart
const chart = Highcharts.mapChart('container', {
title: {
text: 'Highmaps simple flight routes demo'
},
legend: {
align: 'left',
layout: 'vertical',
floating: true
},
accessibility: {
point: {
valueDescriptionFormat: '{xDescription}.'
}
},
mapNavigation: {
enabled: true
},
tooltip: {
formatter: function () {
return this.point.id + (
this.point.lat ?
'<br>Lat: ' + this.point.lat + ' Lon: ' + this.point.lon : ''
);
}
},
plotOptions: {
series: {
marker: {
fillColor: '#FFFFFF',
lineWidth: 2,
lineColor: Highcharts.getOptions().colors[1]
}
}
},
series: [{
// Use the gb-all map with no data as a basemap
mapData,
name: 'Great Britain',
borderColor: '#707070',
nullColor: 'rgba(200, 200, 200, 0.3)',
showInLegend: false
}, {
// Specify cities using lat/lon
type: 'mappoint',
name: 'Cities',
dataLabels: {
format: '{point.id}'
},
// Use id instead of name to allow for referencing points later using
// chart.get
data: [{
id: 'London',
lat: 51.507222,
lon: -0.1275
}, {
id: 'Birmingham',
lat: 52.483056,
lon: -1.893611
}, {
id: 'Leeds',
...