聚类

AMD: require(["geoscene/smartMapping/labels/clusters"], (clusterLabelCreator) => { /* 代码 */ });
ESM: import * as clusterLabelCreator from "@geoscene/core/smartMapping/labels/clusters";
对象: geoscene/smartMapping/labels/clusters
开始: GeoScene API for JavaScript 4.16

此对象包含一个辅助方法,用于生成要在图层的聚类配置上设置的默认标签。 默认标签基于图层的渲染器。 在大多数情况下,默认标签配置将是聚类中的要素总数。 该值将被四舍五入并格式化(例如,聚类标签将显示 2.4k,而不是 2385)。 在某些情况下,例如带有 SizeVariable 的渲染器,默认标签将显示由 size 变量表示的属性的平均值。

clustering-generated-labels

这包括可以在聚类中试验的二级标记方案。此模块仅适用于具有点几何类型的图层。

方法概述

名称 返回类型 总结 对象
Promise<Schemes>更多信息

生成要在 FeatureLayer 的 featureReduction 配置中设置的默认 labelingInfo 方案。


更多信息clusters

方法详情

getLabelSchemes(params){Promise<Schemes>}

生成要在 FeatureLayer 的  featureReduction  配置上设置的默认  labelingInfo  方案。 根据其渲染器为给定图层返回一个或多个建议的标签类。 它还返回一个建议的 clusterMinSize  以确保标签适合聚类。

如果渲染器具有不依赖于比例的  SizeVariable,则将建议用于确定聚类大小的字段或表达式的平均值作为默认标签值。 在所有其他情况下,建议的标签将在标签的中心显示聚类计数。

参数:
规范:
params Object

关于可能传递给该函数的每个参数的详细信息,请参见下表。

规格:

已启用或将启用聚类

renderer Renderer
optional

启用聚类时在输入图层上设置的渲染器。 如果图层的渲染器与启用集群时将使用的渲染器不匹配,请指定此参数。 这不能是  HeatmapRenderer

view MapView

将在其中呈现输入图层的视图。

返回:
类型 描述
Promise<Schemes> 返回一个对象,其中包含要在图层的 featureReduction 属性上设置的建议的主标和次标方案。
例如:
// Sets a suggested popupTemplate on the layer based on its renderer
clusterLabelCreator.getLabelSchemes({
  layer: featureLayer,
  view: view
}).then(function(labelSchemes){
  const featureReduction = featureLayer.featureReduction.clone();
  const { labelingInfo, clusterMinSize } = labelSchemes.primaryScheme;
  featureReduction.labelingInfo = labelingInfo;
  featureReduction.clusterMinSize = clusterMinSize;

  featureLayer.featureReduction = featureReduction;
}).catch(function(error){
  console.error(error);
});

类型定义

方案

包含要在图层的  featureReduction.labelingInfo 上设置的建议 labelingInfo。

属性:
name String

生成的聚类标记方案的名称。这可以在 web 地图创作应用程序的 UI 中使用。

fieldName String

标记方案所基于的 aggregate 字段的名称。这可以在 web 地图创作应用程序的 UI 中使用。

labelingInfo LabelClass[]

要在图层的  featureReduction.labelingInfo 属性上设置的一组 LabelClass 对象。

clusterMinSize Number

建议的 featureReduction.clusterMinSize 需要在聚类中放置标签。

方案

 getLabelSchemes() 方法返回的对象。

属性:
primaryScheme Scheme

包括为输入图层的聚类建议的主要标记方案。

secondarySchemes Scheme[]

包括为输入图层的簇建议的二次标记方案。

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.