【问题标题】:GoogleMaps JS API v3 cluster multiple data types seperatelyGoogle Maps JS API v3 分别集群多种数据类型
【发布时间】:2019-11-18 14:00:22
【问题描述】:

我想将 MarkerClusterer 与不同类型的多个标记一起使用并将它们分别聚类。例如,X 类型的标记只与 X 类型的其他标记进行聚类,y 类型的标记与 y 类型的其他标记进行聚类。

我的地图中有不同类型的标记(并非所有标记都代表相同类型的元素)

如果缩放小于或等于 15(简单部分),我需要它来聚集地图中的所有标记。

当缩放高于 15 时,我无法实现按标记类型对标记进行聚类。

感谢您的帮助。

【问题讨论】:

  • 您能否更清楚地说明您要达到的目标。您是否希望根据集群所代表的数据为集群提供不同的图标。例如,如果一个集群有 10 个位置,其中大多数是 X 类型,那么显示一个 X 集群图标?
  • 是的。例如,如果在一个位置有 10 个标记,一种类型有 5 个,另一种类型有 5 个,我想为每种类型显示一个集群图标。 (一个类型为 5 的集群,另一个类型为 5 的集群)。
  • 好吧,这有点不同。在您的情况下,您基本上是分别对每种类型的数据进行聚类。

标签: angular typescript google-maps markerclusterer azure-maps


【解决方案1】:

如果 Google 地图可以做到这一点,您可能需要提前分离标记并将每组标记传递到单独的 MarkerCluster。

您可能还想看看 Azure Maps。在集群方面它有更多的功能(也比谷歌地图便宜很多)。在 Azure Maps 中,您可以将相同类型的标记分组到不同的数据源中,并在数据源上启用集群。以下是一些资源:

https://docs.microsoft.com/en-us/azure/azure-maps/clustering-point-data-web-sdk

https://azuremapscodesamples.azurewebsites.net/index.html?search=cluster

【讨论】:

  • 那我试试Azure。
  • 感谢您的帮助。我按照你说的做了我想做的事=)
  • 另一个想法。如果您有两个或多个单独聚类的层,则最终会出现聚类重叠。另一个想法是使用单层并让集群显示其中每种类型的数量,例如:azuremapscodesamples.azurewebsites.net/…
猜你喜欢
  • 1970-01-01
  • 2011-05-23
  • 2011-11-23
  • 2011-05-14
  • 2014-06-13
  • 2016-10-21
  • 1970-01-01
  • 1970-01-01
  • 2016-05-28
相关资源
最近更新 更多