-
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 实例。
一组互补的数字字段/表达式,用作点密度可视化的基础。例如,如果创建选举Map,您将指示代表候选人或政党的每个字段的名称,其中存储了总票数。
规格:field可选的 数值字段的名称。
label可选的 说明图例中字段名称(或类别)的标签。如果给定字段没有直观的字段名称或别名,则应使用此选项。例如,对于一个名为
dem
的字段表示民主党的总票数,您可以将标签设置为Democrat
以在最终可视化中明确类别的名称。valueExpression可选的 遵循 Arcade Visualization Profile 定义的规范的 Arcade 表达式。表达式可以使用
$feature
全局变量引用字段值,并且必须返回一个数字。此属性覆盖field
属性,因此用于代替输入field
值。valueExpressionTitle可选的 说明从
valueExpression
返回的值的文本。dotValueOptimizationEnabled可选的 默认值:真的指示是否根据视图的比例改变每个点的值。这将设置输出渲染器的referenceScale。
dotBlendingEnabled可选的 默认值:真的指示是否启用在同一像素处渲染的不同颜色点的颜色混合。这仅在高度密集和高度多样化的特征中可见。
outlineOptimizationEnabled可选的 默认值:错误的指示多边形轮廓宽度是否应根据视图比例而变化。当为 false 时,输出渲染器中将不使用轮廓。
legendOptions可选的 提供用于修改说明可视化的Legend 属性的选项。
规格:unit可选的 表示图例中每个点所代表的单位。例如,在人口密度图中,您可以将
people
的值设置为此参数。输出渲染器将在图例中显示1 dot = 300 people
。dotDensityScheme可选的 在创作应用程序中,用户可以选择预定义的点密度方案。将方案对象传递给此属性以避免根据视图的背景获取一个。
signal可选的 允许可取消的请求。如果取消,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; });
基本信息
以下是所在类或对象的基本信息。
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
函数(或属性)的定义如下:
相关用法
- JavaScript ArcGIS dotDensity.cloneScheme用法及代码示例
- JavaScript ArcGIS dotDensity.getSchemes用法及代码示例
- JavaScript ArcGIS dotDensity.getSchemeByName用法及代码示例
- JavaScript ArcGIS dotDensity.getSchemesByTag用法及代码示例
- JavaScript ArcGIS decorators.cast用法及代码示例
- JavaScript dataView.setBigInt64()用法及代码示例
- JavaScript ArcGIS decorators.aliasOf用法及代码示例
- JavaScript dataView.getBigInt64()用法及代码示例
- JavaScript ArcGIS decorators.subclass用法及代码示例
- JavaScript ArcGIS decorators.property用法及代码示例
- JavaScript date parse()用法及代码示例
- JavaScript ArcGIS SceneView double-click事件用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.overlaps用法及代码示例
- JavaScript ArcGIS Expand.when用法及代码示例
- JavaScript ArcGIS Sublayer.JoinTableDataSource用法及代码示例
- JavaScript ArcGIS FillSymbol3DLayer.outline用法及代码示例
- JavaScript ArcGIS Ground.loadAll用法及代码示例
- JavaScript Object valueOf()用法及代码示例
- JavaScript ArcGIS LabelClass.repeatLabelDistance用法及代码示例
- JavaScript ArcGIS KMLLayerView.when用法及代码示例
- JavaScript ArcGIS Daylight.visibleElements用法及代码示例
- JavaScript Uint8Array.of()用法及代码示例
- JavaScript ArcGIS CIMSymbol.CIMTextSymbol用法及代码示例
- JavaScript new Legend用法及代码示例
- JavaScript Slider.effectiveMin用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 dotDensity.createRenderer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。