【问题标题】:Using ClusterProvider in Nokia/Here Maps Javascript API, invalid cluster numbers在诺基亚/Here Maps Javascript API 中使用 ClusterProvider,集群编号无效
【发布时间】:2013-11-11 16:46:46
【问题描述】:

我正在尝试将集群添加到我的应用程序中,到目前为止,一切正常。

但是,根据缩放级别,集群中的项目数似乎无效。 例如,我在大约 30 英尺的范围内添加了 3 个标记。如果我一直放大,我会看到所有 3 个标记。如果我只缩小几步,我可以看到 2 个标记加上一个指示 3 个项目的集群。

我附上了一张图片,图片的顶部显示了问题。如果我放大一点,它会显示图片的底部。如果我进一步缩小,它会显示 3 个集群。

谢谢

【问题讨论】:

  • 我尝试在“mapviewchangeend”事件中使集群提供程序失效并重新集群,但没有成功

标签: javascript maps markerclusterer here-api


【解决方案1】:

尝试摆弄ClusterProvider.Options。显然,所有聚类算法都是实际数据集的近似值,并且可能在使用默认值的情况下,您所拥有的特定点分布在高缩放时看起来并不好。

这里有三个可以尝试的建议:

  • 降低eps 值以获得更精细的网格。
  • 设置maxminminPts 以避免在较低级别聚集。
  • 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();

}

并不断改变参数,直到它“看起来正确”

【讨论】:

    猜你喜欢
    • 2012-11-10
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 1970-01-01
    相关资源
    最近更新 更多