Các câu trả lời ở trên thanh lịch hơn, nhưng tôi đã tìm thấy một cách nhanh chóng và bẩn thỉu mà thực sự hoạt động thực sự thực sự rất tốt. Bạn có thể thấy nó hoạt động tại www.buildinglit.com
Tất cả những gì tôi đã làm là thêm một phần bù ngẫu nhiên vào vĩ độ và kinh độ cho trang genxml.php của tôi để nó trả về kết quả hơi khác nhau mỗi lần với phần bù mỗi lần bản đồ được tạo bằng các điểm đánh dấu. Điều này nghe có vẻ như là một hack, nhưng trong thực tế, bạn chỉ cần các điểm đánh dấu để di chuyển một chút nhẹ nhàng theo hướng ngẫu nhiên để chúng có thể nhấp vào trên bản đồ nếu chúng bị chồng chéo. Nó thực sự hoạt động rất tốt, tôi sẽ nói tốt hơn phương pháp nhện bởi vì ai muốn đối phó với sự phức tạp đó và để chúng mọc ở khắp mọi nơi. Bạn chỉ muốn có thể chọn điểm đánh dấu. Khỏa thân nó hoạt động hoàn hảo.
Dưới đây là một ví dụ về việc tạo nút lặp câu lệnh while trong php_genxml.php của tôi
while ($row = @mysql_fetch_assoc($result)){ $offset = rand(0,1000)/10000000;
$offset2 = rand(0, 1000)/10000000;
$node = $dom->createElement("marker");
$newnode = $parnode->appendChild($node);
$newnode->setAttribute("name", $row['name']);
$newnode->setAttribute("address", $row['address']);
$newnode->setAttribute("lat", $row['lat'] + $offset);
$newnode->setAttribute("lng", $row['lng'] + $offset2);
$newnode->setAttribute("distance", $row['distance']);
$newnode->setAttribute("type", $row['type']);
$newnode->setAttribute("date", $row['date']);
$newnode->setAttribute("service", $row['service']);
$newnode->setAttribute("cost", $row['cost']);
$newnode->setAttribute("company", $company);
Lưu ý dưới lat và dài có dấu +. từ 2 biến trên. Tôi đã phải chia ngẫu nhiên 0,1000 cho 10000000 để có được một số thập phân đủ nhỏ ngẫu nhiên để chỉ di chuyển các điểm đánh dấu xung quanh. Hãy tự tin với biến đó để có được một cái chính xác hơn cho nhu cầu của bạn.