繁体   English   中英

Google地理编码中的标记簇

[英]marker cluster in google geocode

我正在使用google地理编码在Google地图上根据站点名称显示标记,并且工作正常。 现在,我有两个相同的站点名称,并且图表仅显示一个标记的情况。 它会覆盖标记。 所以,我想到了群集,但是,我不知道如何在下面的代码中实现?

<script>
$(document).ready(function () {
var map;
var elevator;
var myOptions = {
    zoom: 4,
    center: new google.maps.LatLng(39.639537564366684, -97.03125),
    mapTypeId: 'terrain'
};
map = new google.maps.Map($('#map')[0], myOptions);

//info window
var infowindow = new google.maps.InfoWindow({});

var addresses = [<?php $numItems = count($val); $i=0; foreach($val as $data){ echo "['".$data['name']."','".$data['resp']."']"; if(++$i !== $numItems) {echo ",";}}?>];
//var colordot =[];
//alert(addresses);
for (var x = 0; x < addresses.length; x++) {
//alert(addresses[x][1]);
var resp = addresses[x][1];

            //alert(colordot[x]);
    $.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address=' + addresses[x][0] + '&sensor=false', null, function(resp) {
      return function(data) {
        var p = data.results[0].geometry.location;
        var address = data.results[0].formatted_address;
        var latlng = new google.maps.LatLng(p.lat, p.lng);
        if (resp >= 50) {

                 var img= 'img/red-dot.png';
            }
            else{
                var img= 'img/green-dot.png';
            }
        var marker = new google.maps.Marker({

          icon: img,

          position: latlng,
          map: map
        });


        // Adding a click event to the marker
        google.maps.event.addListener(marker, 'click', function() {
            infowindow.setContent('<div><strong>SiteName : ' + address + '</strong><br><strong>Avg. Response : ' + resp + '</strong>');
            infowindow.open(map, this);
        });

      }
    }(resp));
}

});
</script>

我认为您的意思是,您有2个标记彼此重叠,因为它们共享完全相同的坐标,并且您想表明它们确实是分开的标记。

在这种情况下,请使用MarkerClusterer https://developers.google.com/maps/documentation/javascript/marker-clustering

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM