我第一次尝试从GeoJSON文件中提取数据并将其显示在Google Maps中。我只想在geojson中的坐标处放置一个简单的Google Maps标记。尝试阅读我可以在GM API和geojson上上网阅读的内容,但感觉好像很简单。
这是主地图代码:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.webServer>
<!--Overrides the FastCGI handler to let IIS serve the static files-->
<handlers>
<clear />
<add name="StaticFile" path="*" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" />
</handlers>
</system.webServer>
</configuration>
这是 toilets.geojson 文件:
<script>
var map;
function initMap()
{
map = new google.maps.Map(document.getElementById('map'), {
zoom: 16,
center: new google.maps.LatLng(32.061146,34.799387),
mapTypeId: 'hybrid'
});
}
map.data.loadGeoJson('toilets.geojson');
map.data.setMap(map);
</script>
只想在这些坐标处显示常规标记
答案 0 :(得分:0)
一个问题是ERROR 3680 (HY000): Failed to create schema directory 'test' (errno: 13 - Permission denied)
变量在加载GeoJSON时超出范围。该代码必须位于map
函数内部。
initMap
<script>
var map;
function initMap()
{
map = new google.maps.Map(document.getElementById('map'), {
zoom: 16,
center: new google.maps.LatLng(32.061146,34.799387),
mapTypeId: 'hybrid'
});
map.data.loadGeoJson('toilets.geojson');
map.data.setMap(map);
}
</script>
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 16,
center: new google.maps.LatLng(32.061146, 34.799387),
mapTypeId: 'hybrid'
});
map.data.addGeoJson(geoJsonData);
map.data.setMap(map);
}
var geoJsonData = {
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
34.799339175224304,
32.061136963943106
]
}
}]
};
html,
body,
#map {
height: 100%;
margin: 0;
padding: 0;
}