Javascript Google地图,按经度和纬度坐标显示图钉[重复]

Posted

技术标签:

【中文标题】Javascript Google地图,按经度和纬度坐标显示图钉[重复]【英文标题】:Javascript Google map, show pins by longitude and latitude coordinates [duplicate] 【发布时间】:2014-01-07 19:46:18 【问题描述】:

您好,我有一个 javascript 代码,它显示了一个带有引脚的地图,使用那里的位置作为地址。 地址是从数组中读取的,数组结构是这样的:

var locations = ["1915 Edgewater Drive,Orlando,FL", "5555 Kirkman Rd.,Orlando,FL", "4965 Oak Ridge Road,Orlando,FL", "3011 E Colonial Dr,Orlando,FL", "300 Park Avenue,Winter Park,FL"];

用图钉显示地图的代码如下:

function initialize() 
  //Planned direction display
  directionsDisplay = new google.maps.DirectionsRenderer(
      polylineOptions : 
          strokeColor : 'brown',
          strokeOpacity : 0.7,
          strokeWeight : 3
      ,
      suppressMarkers : true,
      suppressPolylines : true
  );

  //actual direction display
  directionsDisplayActual = new google.maps.DirectionsRenderer(
      polylineOptions : 
          strokeColor : 'brown',
          strokeOpacity : 0.7,
          strokeWeight : 3
      ,
      suppressMarkers : true,
      suppressPolylines : true
  );

    geocoder = new google.maps.Geocoder();
    geocoder.geocode(  'address': locations[0] , function(results, status) 
        if (status == google.maps.GeocoderStatus.OK) 

        var chicago = new google.maps.LatLng(results[0].geometry.location.ob, results[0].geometry.location.pb);
          var mapOptions = 
                zoom: 6,
                mapTypeId: google.maps.MapTypeId.ROADMAP,
                center: chicago
          
          map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
          map_actual = new google.maps.Map(document.getElementById('map-actual'), mapOptions);
          calcRoute();
        
    );


现在我没有使用带有地址的位置,而是使用了一系列类似的经度和纬度坐标:

var coordinates = [[28.378929,-80.6006008],[28.378628084853,-80.600730804958],[28.378956475407,-80.600553605881],[28.378929693408,-80.60055175679],[28.378785540514,-80.60065325285],[28.378935283517,-80.600646565422],[28.378950753943,-80.600504807166]]

那么如何更改我的代码以使用这些坐标而不是位置地址?

谢谢。

【问题讨论】:

【参考方案1】:

试试这个:

var coordinates = [[28.378929,-80.6006008],[28.378628084853,-80.600730804958],[28.378956475407,-80.600553605881],[28.378929693408,-80.60055175679],[28.378785540514,-80.60065325285],[28.378935283517,-80.600646565422],[28.378950753943,-80.600504807166]];
// loop through your array of coordinates
for(var i = 0; i < coordinates.length; i++)
    // create a new marker and add it to the map
    var marker = new google.maps.Marker(
        position: new google.maps.LatLng(coordinates[i][0], coordinates[i][1]),
        map: map
    );

编辑:您使用LatLng 对象而不是对地址进行地理编码

【讨论】:

对不起,我是谷歌地图的新手,我想更改实际代码,我不知道如何在我的代码中使用你的。 你能说明你在哪里使用你的var locations吗?

以上是关于Javascript Google地图,按经度和纬度坐标显示图钉[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用Javascript从Google Places搜索api获取纬度和经度

如何验证您在Google地图上的任务纬度和经度上的位置

在 Javascript 中使用 DJango 模板标签添加 Google 地图标记

使用 Google 静态地图检索经度/纬度的问题

地理编码器谷歌地图经度和纬度查找

php 获取Google地图的纬度和经度