定义使用 FeatureReductionBinning 或 FeatureReductionCluster 可视化的图层中所使用的聚合字段。聚合字段使用统计类型 (如平均值或总和) 聚合图层字段中的数据。
featureReduction.fields = [{
name: "SUM_population",
alias: "Total population",
onStatisticField: "population",
statisticType: "sum"
}, {
name: "AVG_age",
alias: "Average age",
onStatisticField: "age",
statisticType: "avg"
}];
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String | 更多详情 | AggregateField | |
String | 类的名称。 更多详情 | Accessor | |
Boolean | 指示该字段是否由 JS API 的渲染引擎进行内部创建,以用于默认的 FeatureReductionCluster 可视化。 更多详情 | AggregateField | |
String | 聚合字段的名称。 更多详情 | AggregateField | |
ExpressionInfo | 包含 Arcade 表达式 表达式的对象,该表达式对聚合图形表示的每个子要素进行求值。 更多详情 | AggregateField | |
String | 使用给定 statisticType 进行汇总的图层字段的名称。 更多详情 | AggregateField | |
String | 定义用于聚合从 onStatisticField 或 onStatisticExpression 返回的数据的统计类型。 更多详情 | AggregateField |
属性详细信息
-
alias String
-
- 默认值:null
示例aggregateField.alias = "Total population";
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
isAutoGenerated Boolean起始版本:GeoScene Maps SDK for JavaScript 4.25
-
指示该字段是否由 JS API 的渲染引擎进行内部创建,以用于默认的 FeatureReductionCluster 可视化。应避免设置或更改此值。如果为
true
,则 AggregateField 的所有其他属性都是只读的。- 默认值:false
-
name String
-
聚合字段的名称。这应描述图层的字段和使用的聚合方法。例如,如果创建的字段包含具有填充字段的一组要素的总填充,则可以将该字段命名为
total_population
或popuplation_sum
。此字段名必须以字母开头,并且只能包含字母数字字符和下划线。
示例// names the aggregate field that will display the sum of the population // for all points representing cities in the bin aggregateField.name = "SUM_population";
-
onStatisticExpression ExpressionInfo起始版本:GeoScene Maps SDK for JavaScript 4.25
-
包含 Arcade 表达式 表达式的对象,该表达式对聚合图形表示的每个子要素进行求值。表达式的所有结果将使用给定的 statisticType 进行聚合。此表达式必须遵循 Arcade 可视化配置文件所定义的规范。表达式必须返回字符串或数字,并可使用
$feature
配置变量访问图层要素的数据值。示例// will create an aggregate field for the Population field of the layer. aggregateField.onStatisticExpression = new ExpressionInfo({ title: "Population per square kilometer", returnType: "number", expression: "$feature.population / AreaGeodetic($feature, 'square-kilometers')" });
-
onStatisticField String起始版本:GeoScene Maps SDK for JavaScript 4.25
-
使用给定 statisticType 进行汇总的图层字段的名称。
示例// will create an aggregate field for the Population field of the layer. aggregateField.onStatisticField = "Population";
-
statisticType String起始版本:GeoScene Maps SDK for JavaScript 4.25
-
定义用于聚合从 onStatisticField 或 onStatisticExpression 返回的数据的统计类型。
可能值
值 描述 avg
聚合中的平均值。仅适用于返回数字的字段和表达式。 count
聚合中的要素总数。在这种情况下,不需要指定字段。 max
聚合中所有值的最大值。仅适用于返回数字的字段和表达式。 min
聚合中所有值的最小值。仅适用于返回数字的字段和表达式。 mode
集合中最常见或最主要的值。可用于返回数字或字符串的字段和表达式。 sum
聚合中所有值的总和。仅适用于返回数字的字段和表达式。 可能值:"avg"|"count"|"max"|"min"|"mode"|"sum"
示例// will calculate the sum of the field specified in onStatisticField for all features in the bin. outStatistic.statisticType = "sum";
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
AggregateField | 创建 AggregateField 对象的深度克隆。 更多详情 | AggregateField | |
* | 创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。 更多详情 | AggregateField | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
Object | 将此类的实例转换为 GeoScene Portal JSON 表示。 更多详情 | AggregateField |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
clone(){AggregateField}
-
创建 AggregateField 对象的深度克隆。
返回类型 描述 AggregateField 调用此方法的对象的深度克隆。 示例// Creates a deep clone of the AggregateField object const sumPopulationField = layer.featureReduction.fields.find( field => field.name === "SUM_population" ).clone();
-
fromJSON(json){*}static
-
创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。传入到输入
json
参数的对象通常来自对 REST API 中查询操作的响应或来自另一个 GeoScene 产品的 toJSON() 方法。有关何时以及如何使用该函数的详细信息和示例,请参阅指南中的使用 fromJSON() 主题。参数json ObjectGeoScene 格式实例的 JSON 表示。有关各种输入 JSON 对象的结构示例,请参阅 GeoScene REST API 文档。
返回类型 描述 * 返回该类的新实例。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
-
toJSON(){Object}
-
将此类的实例转换为 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。
返回类型 描述 Object 此类实例的 GeoScene Portal JSON 表示。