Difference between revisions of "Test"
Jump to navigation
Jump to search
Line 18: | Line 18: | ||
<div id="map" style="width: 600px; height: 400px;"></div> | <div id="map" style="width: 600px; height: 400px;"></div> | ||
− | + | <script> | |
− | + | var url = 'usa.json'; // my GeoJSON data source, in same folder as my html page. | |
− | |||
− | |||
− | |||
− | |||
− | var | + | var map = L.map('map').setView([47.7541, -107.05078], 3); |
− | |||
− | var | + | var osm=new L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png',{ |
− | var | + | attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'}).addTo(map); |
+ | |||
+ | |||
+ | // Set style function that sets fill color property | ||
+ | function style(feature) { | ||
+ | return { | ||
+ | fillColor: 'green', | ||
+ | fillOpacity: 0.5, | ||
+ | weight: 2, | ||
+ | opacity: 1, | ||
+ | color: '#ffffff', | ||
+ | dashArray: '3' | ||
+ | }; | ||
+ | } | ||
+ | var highlight = { | ||
+ | 'fillColor': 'yellow', | ||
+ | 'weight': 2, | ||
+ | 'opacity': 1 | ||
+ | }; | ||
+ | |||
+ | function forEachFeature(feature, layer) { | ||
− | + | var popupContent = "<p><b>STATE: </b>"+ feature.properties.STATE_NAME + | |
− | + | "</br>REGION: "+ feature.properties.SUB_REGION + | |
− | + | "</br>STATE ABBR: "+ feature.properties.STATE_ABBR + | |
− | + | "</br>POP2010: "+ feature.properties.POP2010.toLocaleString() + | |
− | + | "</br>Pop 2010 per SQMI: "+ feature.properties.POP10_SQMI.toLocaleString() + | |
+ | "</br>Males: "+ feature.properties.MALES.toLocaleString() + | ||
+ | "</br>Females: "+ feature.properties.FEMALES.toLocaleString() + | ||
+ | "</br>SQ Miles: "+ feature.properties.SQMI.toLocaleString() +'</p>'; | ||
− | var | + | layer.bindPopup(popupContent); |
− | + | ||
− | + | layer.on("click", function (e) { | |
− | }; | + | stateLayer.setStyle(style); //resets layer colors |
+ | layer.setStyle(highlight); //highlights selected. | ||
+ | }); | ||
+ | } | ||
+ | |||
+ | // Null variable that will hold layer | ||
+ | var stateLayer = L.geoJson(null, {onEachFeature: forEachFeature, style: style}); | ||
+ | |||
+ | $.getJSON(url, function(data) { | ||
+ | stateLayer.addData(data); | ||
+ | }); | ||
− | + | stateLayer.addTo(map); | |
− | |||
− | |||
− | + | // for Layer Control | |
+ | var baseMaps = { | ||
+ | "Open Street Map": osm | ||
+ | }; | ||
+ | var overlayMaps = { | ||
+ | "USA":stateLayer | ||
+ | }; | ||
+ | |||
+ | //Add layer control | ||
+ | L.control.layers(baseMaps, overlayMaps).addTo(map); | ||
− | + | </script> </body> | |
− | |||
</html> | </html> |
Revision as of 16:07, 23 February 2022