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


JavaScript ArcGIS color.createAgeRenderer用法及代码示例


基本信息

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

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

ESM: import * as colorRendererCreator from "@arcgis/core/smartMapping/renderers/color";

对象: esri/smartMapping/renderers/color

自从:用于 JavaScript 4.2 的 ArcGIS API

用法说明

color.createAgeRenderer函数(或属性)的定义如下:

createAgeRenderer (params) {Promise<AgeRendererResult>}


自从:ArcGIS 适用于 JavaScript 4.9 的 API

根据一个或多个字段生成表示要素年龄的连续颜色Renderer。特征的年龄是根据给定的 startTimeendTime 计算的,其中之一必须是输入 layer 中的日期字段。此方法生成 Arcade 表达式并计算表达式输出的统计信息以完成此操作。生成的渲染器包含一个连续的颜色视觉变量,它将基于视图背景的最佳颜色映射到基于表达式的结果统计数据的数据值。

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

参数:

规格:
类型说明
params Object

用于为从开始和/或结束日期字段返回的时间数据生成年龄的连续颜色可视化的输入参数。有关每个参数的详细信息,请参见下表。

规格:

为其生成可视化的图层。

view

View

渲染输入层的视图。此方法检查视图的背景(即底图、Web Map背景或视图容器)以确定输出渲染器的最佳颜色。

startTime

Date|String|Number

字段的名称,或表示年龄计算中开始时间的日期值。如果指定了日期值,则 endTime 参数必须引用图层中的日期字段。

endTime

Date|String|Number

字段的名称,或表示年龄计算中结束时间的日期值。如果指定了日期值,则 startTime 参数必须引用图层中的日期字段。

unit

String

可选的

用于计算 endTimestartTime 之间差异的时间单位。如果未指定单位,则根据数据的分布和分布确定建议的单位。

可能的值"years"|"months"|"days"|"hours"|"minutes"|"seconds"

maxValue

Number

可选的

设置可视化的最大年龄。即使存在高于此值的数据,也只会计算 minValuemaxValue 之间的值的统计信息。在 4.15 版添加。

minValue

Number

可选的

设置可视化的最小年龄。即使存在低于此值的数据,也只会计算 minValuemaxValue 之间的值的统计信息。在 4.15 版添加。

theme

String

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

确定将在连续渐变和Map中强调哪些值。下面列出了可能的值。

说明 示例
high-to-low 用强烈的颜色强调高值。高于平均值一个标准偏差的数据值被指定为最强的颜色。低于平均值一个标准偏差的数据值被指定为最弱的颜色。所有其他值都被插值。 high-to-low
above 用强烈的颜色强调高值。最大数据值被分配最强的颜色。中间或平均数据值被分配最弱的颜色。所有其他值都被插值。 above
below 用强烈的颜色强调低值。最小数据值被分配最强的颜色。中间或平均数据值被分配最弱的颜色。所有其他值都被插值。 below
above-and-below 以有意义的数据值(例如平均值)为中心的值用弱颜色显示,而其他值用强颜色强调。所有其他值都被插值。 above-and-below
centered-on 以有意义的数据值(例如平均值)为中心的值用强烈的颜色强调,而其他值用弱的颜色显示。所有其他值都被插值。 centered-on
extremes 用强烈的颜色强调高值和低值。所有其他人都用弱颜色可视化。所有其他值都被插值。 extremes

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

outlineOptimizationEnabled

Boolean

可选的
默认值:错误的

仅适用于多边形图层。指示多边形轮廓宽度是否应根据视图比例而变化。设置后,必须在 view 参数中提供有效的 MapView 实例。 3D SceneViews 不支持此选项。

sizeOptimizationEnabled

Boolean

可选的
默认值:错误的

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

legendOptions

Object

可选的

提供用于修改说明可视化的Legend 属性的选项。

规格:
title

String

可选的

Legend 中用于表示年龄颜色渐变的标题。

showLegend

Boolean

可选的

指示是否在图例中包含年龄渲染器。

可选的

summaryStatistics 函数生成的统计对象。 createAgeRenderer() 方法生成 Arcade 表达式并针对该层执行统计查询以获取表达式的结果。如果已经生成了表达式的统计信息,则在此处传递对象以避免进行第二次统计查询。

colorScheme

ColorScheme

可选的

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

symbolType

String

可选的
默认值:二维

要生成的符号类型。这取决于您正在使用的视图和所需的可视化。不需要为具有mesh 几何类型的图层指定此参数。可能的值如下所述。

说明
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"

defaultSymbolEnabled

Boolean

可选的
默认值:真的

在渲染器上启用 defaultSymbol 并将其分配给没有值的函数。

colorMixMode

String

可选的
默认值:代替

此选项仅适用于生成网格 SceneLayers 的渲染器.指定符号颜色如何应用于几何颜色/纹理。请参阅中的文档FillSymbol3DLayer.material了解更多上下文。有关可能的值,请参见下表。

说明
tint 将符号 color 应用于去饱和几何体/纹理颜色。
replace 移除几何/纹理颜色并应用符号 color
multiply 将几何/纹理颜色值与符号 color 值相乘。结果是颜色较深。与白色相乘可保持几何颜色相同。
signal

AbortSignal

可选的

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

返回:

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

例子:

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

// visualization based age of incidents closed passed their due date
// or the number of days an incident was overdue at the time of closure.

const ageParams = {
  layer: layer,
  view: view,
  startTime: "Due_Date",
  endTime: "Closed_Date",
  unit: "days",
  theme: "above-and-below"
};

// when the promise resolves, apply the renderer to the layer
colorRendererCreator.createAgeRenderer(ageParams)
  .then(function(response){
    layer.renderer = response.renderer;
  });
const layer = new CSVLayer({
  url: "https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_week.csv",
  copyright: "USGS Earthquakes"
});

// visualization based off current age of incident
const ageParams = {
  layer: layer,
  view: view,
  startTime: "time",
  endTime: Date.now(),
  legendOptions: {
    title: "Time since earthquake struck"
  }
};

// when the promise resolves, apply the renderer to the layer
colorRendererCreator.createAgeRenderer(ageParams)
  .then(function(response){
    layer.renderer = response.renderer;
  });

相关用法


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