diff options
author | Pjotr Prins | 2020-07-17 11:08:15 +0100 |
---|---|---|
committer | Pjotr Prins | 2020-07-17 11:08:15 +0100 |
commit | 16bb5df907c79cd0ce6bea0015821a2ce51fb992 (patch) | |
tree | ddb9677cddcc463bb514300189cbd4300b9117ed /bh20simplewebuploader/static/map.js | |
parent | 0be9983ef88fd3b925d8fa53e7f9ab2a28703bc0 (diff) | |
parent | c69046ee9a5e24eadcd8cb885633328b0fd88011 (diff) | |
download | bh20-seq-resource-16bb5df907c79cd0ce6bea0015821a2ce51fb992.tar.gz bh20-seq-resource-16bb5df907c79cd0ce6bea0015821a2ce51fb992.tar.lz bh20-seq-resource-16bb5df907c79cd0ce6bea0015821a2ce51fb992.zip |
Merge branch 'master' into ebi-submit
Diffstat (limited to 'bh20simplewebuploader/static/map.js')
-rw-r--r-- | bh20simplewebuploader/static/map.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/bh20simplewebuploader/static/map.js b/bh20simplewebuploader/static/map.js new file mode 100644 index 0000000..1003f7d --- /dev/null +++ b/bh20simplewebuploader/static/map.js @@ -0,0 +1,50 @@ + +var map = L.map( 'mapid', { + center: [51.505, -0.09], // Default to U.S.A + minZoom: 2, + zoom: 0 +}); + +L.tileLayer( 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { + attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> | <a href="http://covid19.genenetwork.org/">COVID-19 PubSeq</a>', + subdomains: ['a','b','c'] +}).addTo(map); + + +function drawMap(){ + var mymap = map; + + fetch(scriptRoot + "api/getCountByGPS") + .then(response => { + console.log(response) + return response.json(); + }) + .then(data => { + updateMapMarkers(data); + + }); + document.getElementById("map_view").classList.remove("invisible"); + map.invalidateSize(); +} + + + +/* This function updates the map with markers + * +*/ +function updateMapMarkers(data) { + let markers = L.markerClusterGroup(); + for (let i = 0; i < data.length; i++) { + let {"count": fastaCount, GPS, LocationLabel: label } = data[i]; + let coordinates = GPS.split(" "); + if (!(coordinates == null)) { + let lat, lon; + [lon, lat] = coordinates.map(parseFloat); + let point = L.point() + marker = (L.marker([lat, lon])); + marker.bindPopup("<b>" + label + "</b><br/>" + "SARS-CoV-2<br/>sequences: " +fastaCount); + markers.addLayer(marker); + } + } + map.addLayer(markers); +} |