classBreaks

AMD: require(["geoscene/smartMapping/statistics/classBreaks"], (classBreaks) => { /* code goes here */ });
ESM: import classBreaks from "@geoscene/core/smartMapping/statistics/classBreaks";
函数: geoscene/smartMapping/statistics/classBreaks
起始版本:GeoScene API for JavaScript 4.2

用于根据给定的分类方法和规范化类型为 FeatureLayer 中的输入字段生成分类间隔的函数。

已知限制

  • SceneLayers 必须启用 supportsRenderersupportsLayerQuery 功能,除非为方法的 statistics 参数提供了预定义的统计对象。要检查 SceneLayer 的功能,请使用 getFieldInfoUsage() 方法。
  • 您无法使用 SQL 表达式为 SceneView 中的客户端 FeatureLayers 生成统计信息。

方法概述

名称 返回类型 描述 函数
Promise<ClassBreaksResult>更多信息

用于根据给定的分类方法和规范化类型为 FeatureLayer 中的输入字段(或表达式)生成分类间隔。

更多信息classBreaks

方法详情

classBreaks(params){Promise<ClassBreaksResult>}

用于根据给定的分类方法和规范化类型为 FeatureLayer 中的输入字段(或表达式)生成分类间隔。

参数:
详述:
params Object

有关可能传递给此函数的参数的详细信息,请参阅下表。

详述:

从中生成分类间隔的图层。

field String
可选

分类间隔将基于此字段的值生成。如果提供了字段,则将在服务中查询来自所有要素的给定字段中的值。

normalizationField String
可选

用于规范化从给定 field 返回的值的字段。

classificationMethod String
可选

对数据进行分类的方法。有关可能值的列表,请参阅下表。

可能值 说明
natural-breaks 聚类的数据值被放入单个类中。分类间隔发生在集群之间存在间隙的地方。如果您的数据分布不均匀,则应使用此方法;也就是说,许多要素具有相同或相似的值,并且值组之间存在间隙。
equal-interval 每个类都有相等的值范围;换句话说,每个类的高值和低值之间的差异是相等的。如果数据分布均匀,并且想要强调要素之间值的差异,则应使用此方法。
quantile 每个类具有大致相同数量的要素。如果数据分布均匀,并且想要强调要素之间的相对位置差异,则应使用分位数分类方法。例如,如果将点值分为五个类,则最高类中的点将落入所有点的前五分之一。
standard-deviation 10.50.25 个标准差的间隔将分类分隔符放置在平均值上方和下方,直到所有数据值都包含在一个类中。

可能值"equal-interval"|"natural-breaks"|"quantile"|"standard-deviation"

standardDeviationInterval Number
可选

classificationMethod = "standard-deviation" 时,这将设置每个分类间断的间隔(例如 0.250.330.5, 1)。

minValue Number
可选

分类间隔定义的最小边界值。将此与 maxValue 结合使用以在上下限之间生成分类中断。

maxValue Number
可选

分类间隔定义的最大边界值。将此与 minValue 结合使用以在上下限之间生成分类中断。

numClasses Number
可选

指示要为分类间隔定义生成的类数。

valueExpression String
可选

遵循 Arcade Visualization Profile 定义的规范的 Arcade 表达式。表达式可以使用 $feature 全局变量引用字段值,并且必须返回一个数字。此属性覆盖 field 属性,因此用于代替输入field 值。

sqlExpression String
可选

计算为数字的 SQL 表达式。

sqlWhere String
可选

用于过滤统计查询要素的 SQL where 子句。例如,这在您希望避免除以零的情况下很有用,就像创建优势可视化的情况一样。

view View
可选

指定 valueExpression 时需要 SceneViewMapView 实例。

features Graphic[]
已弃用起始版本 4.23。请改用 useFeaturesInView
可选

要为其生成分类间隔的要素子集。

useFeaturesInView Boolean
可选

仅当输入 layer 是服务支持的 FeatureLayer 时才适用。当为 true 时,将根据视图中可见的要素在客户端上计算统计信息。若为 false,将从服务中请求统计信息。起始版本 4.23。

可选

允许可取消的请求。如果取消,promise 将被拒绝并出现名为 AbortError 的错误。另请参阅 AbortController

返回:
类型 说明
Promise<ClassBreaksResult> 解析为 ClassBreaksResult 的实例。
示例:
classBreaks({
  layer: featureLayer,
  field: "COL_DEG",
  normalizationField: "TOT_POP",
  classificationMethod: "quantile",
  numClasses: 5
}).then(function(response){
  // class break infos that may be passed to the
  // constructor of a ClassBreaksRenderer
  let breakInfos = response.classBreakInfos;
});

类型定义

ClassBreak

描述从 classBreaks() 方法生成的单个分类间隔的对象。

属性:
label String

描述在图例中使用的给定分类间隔的标签。

minValue Number

分级符的下限。

maxValue Number

分级符的上限。

ClassBreaksResult

classBreaks() 方法返回的对象。此对象描述使用指定的分类方法从 FeatureLayer 中的数据为给定字段生成的类。

属性:
classBreakInfos ClassBreak[]

描述从 classBreaks() 方法生成的类中断的对象数组。

minValue Number

数据集中要素的最小值。这将是最低班级休息的下限。

maxValue Number

数据集中要素的最大值。这将是最高等级突破的上限。

normalizationTotal Number

在使用 createClassBreaksRenderer() 生成分类中断时,如果 normalizationType 设置为 percent-of-total,则归一化总数。

您的浏览器已不再受支持。请升级您的浏览器以获得最佳体验。请参阅 我们的浏览器弃用帖子以获取详细信息