在 Google 地图上显示 OpenStreetMap 边界(使用 v3 api)
Displaying OpenStreetMap boundaries on Google maps (using v3 api)
我想使用通过以下工具获得的 GeoJSON 数据在 Google 地图上显示城市边界。
- 我去了 nominatim.openstreetmap.org 并搜索了一个城市(例如丹佛)
- 使用检索到的 OSM ID(在本例中为:253750),然后我使用在线工具(polygons.openstreetmap.fr)生成了 GeoJSON 文件 - 看起来像这样 http://polygons.openstreetmap.fr/get_geojson.py?id=253750¶ms=0
之后,我下载了文件并尝试使用简单的方法将此 GeoJSON 数据加载到我的地图中:
map.data.loadGeoJson(
'http://domain.com/example.json');
但是,在我的控制台中出现错误:
Uncaught InvalidValueError: not a Feature or FeatureCollection
问题是,即使上述工具生成 GeoJSON 格式,它也不能被识别为标准格式。那么中间是否有额外的步骤或者我在这里遗漏了什么?
相关问题:
您需要获取从 Open Street Maps 检索的数据并将其放入 GeoJson 解析器期望的 Feature/FeatureCollection JSON 中的位置:
var geoJson = {
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {},
"properties": {}
}];
// where "geoJsonData" is the data you retrieved
geoJson.features[0].geometry = geoJsonData;
我想使用通过以下工具获得的 GeoJSON 数据在 Google 地图上显示城市边界。
- 我去了 nominatim.openstreetmap.org 并搜索了一个城市(例如丹佛)
- 使用检索到的 OSM ID(在本例中为:253750),然后我使用在线工具(polygons.openstreetmap.fr)生成了 GeoJSON 文件 - 看起来像这样 http://polygons.openstreetmap.fr/get_geojson.py?id=253750¶ms=0
之后,我下载了文件并尝试使用简单的方法将此 GeoJSON 数据加载到我的地图中:
map.data.loadGeoJson(
'http://domain.com/example.json');
但是,在我的控制台中出现错误:
Uncaught InvalidValueError: not a Feature or FeatureCollection
问题是,即使上述工具生成 GeoJSON 格式,它也不能被识别为标准格式。那么中间是否有额外的步骤或者我在这里遗漏了什么?
相关问题:
您需要获取从 Open Street Maps 检索的数据并将其放入 GeoJson 解析器期望的 Feature/FeatureCollection JSON 中的位置:
var geoJson = {
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {},
"properties": {}
}];
// where "geoJsonData" is the data you retrieved
geoJson.features[0].geometry = geoJsonData;