9

给定一个位置列表,例如

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

为每个位置生成带有图钉的谷歌地图的最简单方法是什么?

4

5 回答 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 地图中的所有内容都基于纬度 (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 数组,然后将它们绘制在地图上。

于 2008-08-19T22:50:52.487 回答
8

查看Google Maps API 示例 他们使之变得非常简单,并且他们的 API 文档很棒。大多数示例用于在客户端用 JavaScript 编写所有代码,但也有适用于其他语言的 API。

于 2008-08-18T21:38:16.497 回答
1

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

编辑:亚当有一个更好的答案。如果有疑问,请查看 API 示例。

于 2008-08-18T21:34:26.347 回答
1

试试这个:http ://www.google.com/uds/solutions/wizards/mapsearch.html

这是一个谷歌地图向导,它将为您生成代码。不是最适合您的应用程序;但是一个“弄湿你的脚”的好地方;)

编辑:(找到链接),这是一个很好的 Google Maps API 逐步教程。

祝你好运!

/mp

于 2008-08-18T22:59:19.843 回答
1

这里有一些链接,但与大多数事情一样,我还没有开始尝试它们。

http://gathadams.com/2007/08/21/add-google-maps-to-your-net-site-in-10-minutes/

http://www.mapbuilder.net/

干杯约翰

于 2008-08-19T23:02:38.650 回答