使用Google Maps API对英国邮政编码进行地理编码的最佳方式?

时间:2010-05-14 09:02:06

标签: google-maps geocoding google-maps-api-2

对英国邮政编码进行地理编码的最有效和准确的方法是什么?使用内置的地理编码对象会导致大量模糊的结果(许多邮政编码只返回一般区域)。

我可以通过JavaScript插入免费的英国邮政编码地理编码服务吗?

2 个答案:

答案 0 :(得分:6)

修改:为了更清楚,这会使用Google搜索API中的本地搜索,而不是google maps api来进行更准确的地理编码。

最好的方法是使用Google搜索功能。

如果您获得了api密钥并完成了所有设置:http://code.google.com/apis/ajaxsearch/

var localSearch;
var map;
var icon;
var addressMarkerOptions;
google.load("search", "1");
google.load("maps", "2");
google.setOnLoadCallback(initialize);

function initialize()
{
  localSearch = new GlocalSearch();
  icon = new GIcon(G_DEFAULT_ICON);
  addressMarkerOptions = { icon:icon , draggable: false};
  map = new GMap2(document.getElementById("map"));
  map.addControl(new GLargeMapControl());
  map.addControl(new GMapTypeControl());
  plotAddress("OX4 1FJ");
}

/**
* This takes either a postcode or an address string
*
*/
function plotAddress(address)
{
  localSearch.setSearchCompleteCallback(null, 
    function() {

      if (localSearch.results[0])
      {     
        var resultLat = localSearch.results[0].lat;
        var resultLng = localSearch.results[0].lng;
        var point = new GLatLng(resultLat,resultLng);
        var marker = new GMarker(point, addressMarkerOptions);
        map.addOverlay(marker);
        map.setCenter(point, 5, G_NORMAL_MAP);
      }
      else
      {
        alert('address not found');
      }
    });

  localSearch.execute(address + ", UK");
}

答案 1 :(得分:0)

我相信Live / Bing / Windows地图的API为英国邮政编码提供了比谷歌地图API更准确的位置。

或者,有英国邮政编码数据的数据库可用,尽管它们非常昂贵。这篇文章有一些有趣的评论:http://jamiethompson.co.uk/web/2008/07/24/full-uk-postcode-database-for-free/