我对GOOGLE MAP API有疑问。如果您有两个以上共享相似地址的数据,那么如何在同一地址上显示Pins Drop?
实施例
您有以下数据:
Name=>Ray | Address=>Melon Park, California, USA ;
Name=>John | Address=>Melon Park, California, USA ;
Name=>Steve | Address=>Melon Park, California, USA
您想在Google地图上显示类似地址的3个Pins Drop。
答案 0 :(得分:1)
上面链接的帖子有一些很好的建议。你的选择是:
稍微偏移标记,因此它们不是全部显示在标记上,而是彼此非常接近。只需为每个添加或减去小增量即可。
为每个位置使用不同的图标。如果您知道在同一位置可能重叠的标记的最大数量(例如4?),您可以制作自己的旋转图标,因此它们可以指向左,右或向上而不是指向“向下”的典型泪滴形状
处理infowindow / UI中的数据重叠。
答案 1 :(得分:1)
添加小delta会像这样工作(这个脚本是用PHP编写的):
$random_num_lat = .00065 * mt_rand(1, 10); // delta to the lat value added
$random_num_lng = .00065 * mt_rand(1, 10); // delta to the lon value added
$lat=$row['lat']+$random_num_lat;
$lon=$row['lon']+$random_num_lng;
//now in loop it will be three `enter code here`marker display seperate to each other
while ($row = mysql_fetch_array($query)) {
echo ("addMarker($lat, $lon,'<b>$name</b><br/>$desc1');\n");
}
答案 2 :(得分:0)
答案 3 :(得分:0)
注意:以下是更多的技巧而非解决方案:
编写一种检查数组中重复坐标的算法。
找到重复项后,将一个小值(例如0.000001)添加到找到的坐标。 请注意,值越小,放大越多,可以看到差异。