1

我正在尝试使用 GeoDjango 在 Python 中的一组点上计算集群。

问题:给定一组点,输出一组这些点的集群。(我可以提前指定簇数/簇大小/距离以简化)

网络上有一些解决方案可以进行集群,所以这是一个众所周知的问题。我认为 GeoDjango 会开箱即用地处理这些类型的问题,但不清楚如何 - 我搜索了 GeoDjango 文档、谷歌和其他一些地方,但找不到任何东西。

在推出我自己的集群解决方案之前,我想我想看看是否有一种直接的方法可以使用 GEOS 或 GeoDjango 中的其他包来做到这一点。

4

3 回答 3

3

GeoDjango 没有任何内置的集群支持;我知道,您将与 GeoDjango 一起使用的任何现有开源 GIS 应用程序通常不提供此操作。

一些运行 Django/GeoDjango 的站点(如everyblock.com)已经发布了他们的集群方法,但是这种支持并没有内置到 GeoDjango 中。

通常,这些应用程序提供的功能是基于底层数据库支持的。GEOS,PostGIS 下的库,以及一般的“最新技术”(至少在非 Java 世界中),没有任何类型的集群 API 或行为。

于 2010-06-15T15:36:20.583 回答
-1

正如 Christopher Schmidt 提到的,在 GeoDjango 中似乎没有任何开箱即用的集群支持。但是,如果其他人遇到这个问题,这就是我所做的:

  • 安装了 mlpy 和 numpy
  • 使用 Hluster 层次聚类算法
  • 编写了一个包装函数,将 GEOS Point 对象转换为 mlpy 可以理解的矩阵

文档位于: https ://mlpy.fbk.eu/data/doc/clustering.html

于 2010-06-16T20:06:01.143 回答
-1

如果有人偶然发现这个线程:

https://github.com/biodiv/anycluster

我开源了我的 geodjango 集群应用程序。安装后,你只需要几行 javascript 和它的集群。您可以轻松更改一些设置并使用自己的图形。我还在github上添加了一些使用示例...

于 2013-03-28T22:38:02.290 回答