最简单的制作谷歌地图混搭的方法?

9

给定一组位置,例如

    <td>El Cerrito, CA</td>
    <td>Corvallis, OR</td>
    <td>Morganton, NC</td>
    <td>New York, NY</td>
    <td>San Diego, CA</td>

什么是生成带有每个位置图钉的Google地图的最简单方法?
5个回答

11

我假设你的代码中已经有了使用API密钥的地图基础知识。

<head>
  <script 
   type="text/javascript"
   href="http://maps.google.com/maps?
         file=api&v=2&key=xxxxx">
  function createMap() {
    var map = new GMap2(document.getElementById("map"));
    map.setCenter(new GLatLng(37.44, -122.14), 14);
  }
  </script>
</head>
<body onload="createMap()" onunload="GUnload()">

Google Maps中的所有内容都是基于纬度(lat)和经度(lng)的。
因此,要创建一个简单的标记,您只需使用lat和lng创建一个GMarker。

var where = new GLatLng(37.925243,-122.307358); //Lat and Lng for El Cerrito, CA
var marker = new GMarker(where); // Create marker (Pinhead thingy)
map.setCenter(where); // Center map on marker
map.addOverlay(marker); // Add marker to map

但是,如果您不想为每个城市查找Lat和Lng,则可以使用Google的Geo Coder。这是一个示例:

var address = "El Cerrito, CA";
var geocoder = new GClientGeocoder;
geocoder.getLatLng(address, function(point) {
  if (point) {
    map.clearOverlays(); // Clear all markers
    map.addOverlay(new GMarker(point)); // Add marker to map
    map.setCenter(point, 10); // Center and zoom map on marker
  }
});

所以,我将创建一个由Geocoder中每个城市的GLatLng数组,并将它们绘制在地图上。


8

查看Google Maps API示例,它们使得操作变得简单易懂,API文档也非常好。大部分的示例都是基于JavaScript在客户端完成的,但是也有其他语言的API可用。


1

我猜想如果要真正给你一个答案,需要更多的信息。但是在Django Pluggables上有一个django-googlemap插件可能会有所帮助。

编辑:Adam提供了一个更好的答案。当你不确定时,请查看API示例。


1

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接