我试图将群集添加到我的应用程序,到目前为止,一切正常。
但是,取决于缩放级别,群集中的项目数似乎无效。
例如,我在大约30英尺的范围内添加了3个标记。如果我一直放大,则会看到所有3个标记。如果仅缩小几步,我会看到2个标记以及一个指示3个项目的群集。
我附上了图片,图片的顶部显示了问题。如果我放大一点,它将显示图片的底部。如果我进一步缩小,它将显示3的群集。
谢谢
最佳答案
尝试摆弄ClusterProvider.Options。显然,所有聚类算法都是实际数据集的近似值,也许您所拥有的点的特定分布在使用默认值的高缩放下看起来并不好。
这是三个建议尝试:
降低eps
值以获得更好的网格。
设置max
和min
或minPts
以避免在较低级别聚集。
将strategy
设置为STRATEGY_GRID_BASED
而不是使用默认浓度。
例如像这样的东西:
function clusterDataPoints(data){
clusterProvider = new nokia.maps.clustering.ClusterProvider(map, {
eps: 5,
minPts: 5,
min: 18,
strategy: nokia.maps.clustering.ClusterProvider.STRATEGY_GRID_BASED,
dataPoints: data
});
clusterProvider.cluster();
}
并不断更改参数,直到“看起来正确”为止