当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS univariateColorSize.createContinuousRenderer用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/smartMapping/renderers/univariateColorSize"], (colorAndSizeRendererCreator) => { /* code goes here */ });

ESM: import * as colorAndSizeRendererCreator from "@arcgis/core/smartMapping/renderers/univariateColorSize";

对象: esri/smartMapping/renderers/univariateColorSize

自从:用于 JavaScript 4.2 的 ArcGIS API

用法说明

univariateColorSize.createContinuousRenderer函数(或属性)的定义如下:

createContinuousRenderer (params) {Promise<ContinuousRendererResult>}


生成可以直接应用于 LayerRenderer 。渲染器包含连续的颜色和大小可视变量,这些变量根据视图的背景映射具有最佳颜色和大小的符号,以根据来自指示字段或表达式的汇总统计信息停止值。

在大多数情况下,您将提供 layerbasemapfieldtheme 来生成此渲染器。在这种情况下,数据的统计信息并不为人所知,并且用户不知道在可视化中使用什么颜色和大小。您还可以使用 valueExpression 而不是 field 根据在运行时执行的脚本返回的值来可视化特征。

提供其他选项是为了方便更多涉及的自定义可视化创作应用程序。例如,如果您已经在另一个操作中生成了统计信息,则可以将统计信息对象传递给 statistics 参数以避免对服务器进行额外调用。

参数:

规格:
类型说明
params Object

有关可能传递给此方法的每个参数的详细信息,请参见下表。

规格:

为其生成视觉变量的层。

view

View

可选的

渲染输入层的视图。此方法检查视图的背景(即底图、Web Map背景或视图容器)以确定输出渲染器的最佳颜色。在实践中应始终设置此参数,但如果未提供此参数,则此方法将假定生成的渲染器将显示在浅色背景上。当使用 valueExpression 创建渲染器或用于在 SceneView 中显示的渲染器时,此参数是必需的。

field

String

可选的

将查询其数据以进行统计并用作数据驱动可视化基础的字段的名称。如果使用 valueExpression,则忽略此属性。

normalizationField

String

可选的

用于规范化给定 field 值的字段名称。提供归一化字段有助于最大限度地减少一些可视化错误并标准化数据,因此所有特征都以最小的偏差进行可视化,因为面积差异或计数变化。此选项通常在可视化密度时使用。

valueExpression

String

可选的

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

valueExpressionTitle

String

可选的

说明从 valueExpression 返回的值的文本。这是由Legend 小部件使用的。

theme

String

可选的
默认值:high-to-low

根据有意义的数据值设置大小停止和颜色。从 4.18 版开始。

说明
high-to-low 最大数据值被分配最大尺寸和颜色。最小数据值被分配最小大小和颜色。所有其他值都被插值。
above 最大数据值被分配最大尺寸和颜色。平均数据值或零被分配最小大小和颜色。对最大数据值和平均值之间的所有其他值进行插值。这对于映射变量随时间的增加非常有用,例如人口增加或两个日期之间的失业。
below 最小数据值被分配最大尺寸和颜色。平均数据值或零被分配最小大小和颜色。对最小数据值和平均值之间的所有其他值进行插值。这对于绘制变量随时间的下降情况很有用,例如人口减少或两个日期之间的失业率。
above-and-below 最小和最大数据值被分配最大尺寸和颜色。平均数据值或零被分配最小大小和颜色。使用发散色带。最小和最大数据值与平均值之间的所有其他值都被插值。这对于映射值随时间和速率的变化非常有用。

可能的值"high-to-low"|"above"|"below"|"above-and-below"

sqlExpression

String

可选的

计算为数字的 SQL 表达式。

sqlWhere

String

可选的

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

sizeOptimizationEnabled

Boolean

可选的
默认值:错误的

指示符号大小是否应根据视图比例而变化。设置后,必须在 view 参数中提供有效的 MapView 实例。 3D SceneViews 不支持此选项。

可选的

summaryStatistics 函数生成的统计对象。如果该字段的统计信息已经生成,则在此处传递对象以避免向服务器进行第二次统计查询。

minValue

Number

可选的

用户设置的自定义最小值。将此与 maxValue 结合使用以生成上下限之间的统计信息。这将是返回的视觉变量中的最低点。

maxValue

Number

可选的

用户设置的自定义最大值。将此与 minValue 结合使用以生成上下限之间的统计信息。这将是返回的视觉变量中的最高点。

defaultSymbolEnabled

Boolean

可选的

在渲染器上启用 defaultSymbol 并将其分配给没有值的特征和不在配置数据范围内的特征。

colorOptions

Object

可选的

用于配置可视化颜色部分的选项。

规格:
colorScheme

ColorScheme

可选的

在创作应用程序中,用户可以选择预定义的配色方案。将方案对象传递给此属性以避免基于 themebasemap 获得一个。

isContinuous

Boolean

可选的
默认值:错误的

仅适用于above-and-below 主题。如果 true ,则向渲染器添加具有发散色带的 ColorVariable。从 4.18 版开始。

sizeOptions

Object

可选的

用于配置可视化大小部分的选项。

规格:
sizeScheme

SizeScheme

可选的

在创作应用程序中,用户可以选择预定义的尺寸方案。将方案对象传递给此属性以避免根据视图的背景获取一个。

symbolOptions

Object

可选的

above-and-below 主题设置符号的选项。从 4.18 版开始。

参数:

规格:
symbolStyle

String

可选的

根据预定义的命名符号对设置上方和下方的符号。

可能的值"caret"|"circle-caret"|"arrow"|"circle-arrow"|"plus-minus"|"circle-plus-minus"|"square"|"circle"|"triangle"|"happy-sad"|"thumb"

symbols

Object

可选的

允许您在above-and-below 主题中指定自定义符号。

规格:
above

Symbol

用于above-and-below 可视化的上述部分的符号。

below

Symbol

用于above-and-below 可视化的以下部分的符号。

legendOptions

Object

可选的

提供用于配置 Legend 的选项,该 Legend 表示从此方法生成的渲染器。从 4.18 版开始。

规格:
title

String

可选的

Legend 中用于表示从此方法生成的渲染器的标题。

showLegend

Boolean

可选的

指示Legend 小部件是否应显示说明生成的渲染器的内容。

symbolType

String

可选的
默认值:二维

要生成的符号类型。这取决于您正在使用的视图和所需的可视化。可能的值如下所述。

说明
2d 使用 2D 符号(例如 SimpleMarkerSymbolSimpleLineSymbolSimpleFillSymbol )生成可视化。如果为 MapView 中的数据生成可视化,请使用此选项。
3d-flat 使用具有平面符号图层(例如 IconSymbol3DLayerLineSymbol3DLayerFillSymbol3DLayer )的 3D 符号生成可视化。如果为 SceneView 中的数据生成 2D 可视化,请使用此选项。
3d-volumetric 使用具有体积符号图层的 3D 符号生成可视化,例如 ObjectSymbol3DLayerPathSymbol3DLayerExtrudeSymbol3DLayer 。如果为 SceneView 中的数据生成 3D 可视化,并且只有符号的高度应该是可变的,例如圆柱体,则使用此选项。如果使用此选项,则必须向 view 参数提供 SceneView 实例。
3d-volumetric-uniform 使用具有体积符号图层的统一大小的 3D 符号生成可视化。如果为 SceneView 中的数据生成 3D 可视化,并且符号的大小应一致,例如球体,请使用此选项。如果使用此选项,则必须向 view 参数提供 SceneView 实例。

可能的值"2d"|"3d-flat"|"3d-volumetric"|"3d-volumetric-uniform"

signal

AbortSignal

可选的

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

返回:

类型 说明
Promise<ContinuousRendererResult> 解析为 ContinuousRendererResult 的实例。

例子:

const layer = new FeatureLayer({
  url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/counties_politics_poverty/FeatureServer/0"
});

// color/size univariate visualization based on field and normalization field
const params = {
  layer: layer,
  view: view,
  field: "POP_POVERTY",
  normalizationField: "TOTPOP_CY"
};

// when the promise resolves, apply the renderer to the layer
colorAndSizeRendererCreator.createContinuousRenderer(params)
  .then(function(response){
    layer.renderer = response.renderer;
  });
const layer = new FeatureLayer({
  url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/counties_politics_poverty/FeatureServer/0"
});

// above-and-below visualization based off Arcade expression
const params = {
  layer: layer,
  valueExpression: "(($feature.votes_2016 - $feature.votes_2012) / $feature.votes_2016) * 100",
  valueExpressionTitle: "Change in votes from 2012-2016",
  view: view,
  theme: "above-and-below",
  colorOptions: {
    isContinuous: false
  },
  symbolOptions: {
    symbolStyle: "arrow"
  }
};

// when the promise resolves, apply the renderer to the layer
colorAndSizeRendererCreator.createContinuousRenderer(params)
  .then(function(response){
    layer.renderer = response.renderer;
  });

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 univariateColorSize.createContinuousRenderer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。