服务器端谷歌标记聚类 - Python/Django

Fra*_*nek 7 python django json google-maps markerclusterer

在尝试使用客户端方法聚类大量Google标记后,我认为我的项目(拥有28,000多名用户的社交网络)是不可能的.

是否有任何在服务器端聚类坐标的例子 - 最好是在Python/Django中?

我希望这样做的方法是根据标记的接近度(半径)和缩放级别逐渐索引标记.

换句话说,当新用户注册时,他/她被自动分配给彼此接近的某个"组"标记,从而增加了"组"计数器.发送到服务器的只是少数"组".仅当地图的缩放级别/比例为1:1时 - 实际用户才会显示在地图上.

这样,客户端每个请求/缩放级别只需要处理10-50个标记.

dar*_*dar 0

一种方法是根据缩放级别定义一个具有单位大小的网格。因此,您可以按经纬度收集网格内的所有项目,精确到小数点后一位。例如 42.2x73.4。因此 42.2003x73.4021 处的点落在该网格单元中。该单元格的边界为 42.2x73.3 和 42.2x73.5。

如果网格单元中有一个或多个点,则可以在该网格的中心放置一个标记。

然后,您连接 Zoomend 事件并相应地更改网格大小,并重新绘制标记。

http://code.google.com/apis/maps/documentation/reference.html#GMap2.zoomend