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


JavaScript ArcGIS dotDensity.createRenderer用法及代码示例


基本信息

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

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

ESM: import * as dotDensityRendererCreator from "@arcgis/core/smartMapping/renderers/dotDensity";

对象: esri/smartMapping/renderers/dotDensity

自从:用于 JavaScript 4.12 的 ArcGIS API

用法说明

dotDensity.createRenderer函数(或属性)的定义如下:

createRenderer (params) {Promise<RendererResult>}


基于一个或多个互补数字字段和/或 Arcade 表达式生成 DotDensityRenderer。此方法将为所提供视图比例的数据确定适当的dotValue

例如,假设您有一层美国县,其字段包含各种裁剪的总销售额:小麦、大豆、玉米、棉花和蔬菜。如果某个要素的每个字段具有以下值:

字段名称 数数 颜色
Wheat 140 purple
Soybeans 2000 blue
Corn 0 yellow
Cotton 300 green
Vegetables 120 red

此方法将生成一个渲染器,可以确定 dotValue 应该是 20 。具有上述数据的特征将随机放置 6 个紫点、100 个蓝点、无黄点、60 个绿点和 5 个红点。

建议值是根据特征样本计算得出的。因此,使用相同的参数多次执行此方法可能会产生不同的结果。

提供其他选项是为了方便更多涉及的自定义可视化创作应用程序。

参数:

规格:
类型说明
params Object

用于基于一组互补数字字段生成点密度可视化的输入参数。有关每个参数的详细信息,请参见下表。

规格:

为其生成可视化的多边形图层。

view

MapView

将在其中呈现可视化的 MapView 实例。

attributes

Object[]

一组互补的数字字段/表达式,用作点密度可视化的基础。例如,如果创建选举Map,您将指示代表候选人或政党的每个字段的名称,其中存储了总票数。

规格:
field

String

可选的

数值字段的名称。

label

String

可选的

说明图例中字段名称(或类别)的标签。如果给定字段没有直观的字段名称或别名,则应使用此选项。例如,对于一个名为 dem 的字段表示民主党的总票数,您可以将标签设置为 Democrat 以在最终可视化中明确类别的名称。

valueExpression

String

可选的

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

valueExpressionTitle

String

可选的

说明从 valueExpression 返回的值的文本。

dotValueOptimizationEnabled

Boolean

可选的
默认值:真的

指示是否根据视图的比例改变每个点的值。这将设置输出渲染器的referenceScale

dotBlendingEnabled

Boolean

可选的
默认值:真的

指示是否启用在同一像素处渲染的不同颜色点的颜色混合。这仅在高度密集和高度多样化的特征中可见。

outlineOptimizationEnabled

Boolean

可选的
默认值:错误的

指示多边形轮廓宽度是否应根据视图比例而变化。当为 false 时,输出渲染器中将不使用轮廓。

legendOptions

Object

可选的

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

规格:
unit

String

可选的

表示图例中每个点所代表的单位。例如,在人口密度图中,您可以将 people 的值设置为此参数。输出渲染器将在图例中显示1 dot = 300 people

dotDensityScheme

DotDensityScheme

可选的

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

signal

AbortSignal

可选的

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

返回:

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

例子:

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

// will create a visualization of predominant crop by U.S. county

const params = {
  layer: layer,
  view: view,
  attributes: [{
    field: "M217_07",
    label: "Vegetables"
  }, {
    field: "M188_07",
    label: "Cotton"
  }, {
    field: "M172_07",
    label: "Wheat"
  }, {
    field: "M193_07",
    label: "Soybeans"
  }, {
    field: "M163_07",
    label: "Corn"
  }]
};

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

相关用法


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