当我在谷歌地图中输入亚洲地区的地址时,其中相当多的地方超过200米。例如,“blk 85 bedok north road,singapore”距离超过300米。虽然我不希望每次都有Google地图,但有时候错误对某些用例来说太大了。我有什么选择来处理网络应用中不准确的Google地图位置? Web应用程序应该让用户输入地址或邮政编码作为条目的一部分,我将对地址进行地理编码并存储lat-long。
答案 0 :(得分:2)
您可以使用bing,yahoo和google的Geo Location api来查找位置的纬度和经度,将结果平均并使用结果。因此,如果他们都同意,你仍然可以获得一个好的位置,但如果他们不同意,你会获得所有三个的最佳近似值。
您甚至可以通过编程方式比较每个引擎的结果,并抛弃任何与其他引擎不一致的内容(例如,如果bing和yahoo同意,而google不同意,那么你可以扔掉google)。
除此之外,如果你有一组你知道错误的地址,你可以简单地为这些点存储正确的经度和纬度,并在这些情况下覆盖结果。
当然,要解决这个问题,你需要对地址进行地理编码,以某种方式检查它们的有效性(如上所述),并使用它们的纬度和经度绘制它们。
答案 1 :(得分:0)
你真的没有任何修复,你可以在这里谷歌地图的准确性摆布。重要的是你不知道如果地址在进行下一次搜索时不准确,那么你无能为力。
您可以在此处发布主题,Google会看到它并经常回复:Google Maps Local Listing Forums。我会在你的一些例子中打开一些东西,希望它们更加准确......在这种情况下你能做的就是。
答案 2 :(得分:0)
问题不在于lat / lng数据,实际上它们是正确的。问题是公共谷歌地图api的地图图块的地理坐标是不准确的。 maps.google.com上的地图由与您可以嵌入网站,在自己的应用程序中使用的公共Google Maps API使用的地图图块不同的地图提供商提供。
查看我最近在Google Maps & apps with mapview have different current positions
发布的帖子答案 3 :(得分:0)
结果是map.google.com以及地图api?
如果在谷歌地图直播网站上结果是准确的,那么你可以进行ajax搜索以返回正确的lon / lat。
我在对英国邮政编码进行地理编码时使用了这个
答案 4 :(得分:0)
我试图回答上面的答案,但我还不够资格。请注意,无论您使用哪种地理编码,有时都会限制使用该数据。例如,谷歌的地理编码API不允许用于显示除谷歌地图以外的任何地方检索到的信息。对于其他人来说可能也是如此,我不知道你的项目是什么,但这是值得注意的。