方法概述
名称 | 返回类型 | 总结 | 对象 | |
---|---|---|---|---|
Promise<RendererResult> | 更多信息 基于一个或多个互补数字字段和/或 Arcade 表达式生成 DotDensityRenderer。 | 更多信息 | dotDensity |
方法详情
-
createRenderer(params){Promise<RendererResult>}
-
基于一个或多个互补数字字段和/或 Arcade 表达式生成 DotDensityRenderer 。 此方法将为所提供视图比例的数据确定适当的 dotValue。
例如,假设您有包含美国多个县的图层,其字段包含各种作物的总销售额:小麦、大豆、玉米、棉花和蔬菜。 如果某个要素的每个字段具有以下值:
字段名称 总数 颜色 Wheat 140 紫色 Soybeans 2000 蓝色 Corn 0 黄色 Cotton 300 绿色 Vegetables 120 红色 此方法将生成一个渲染器,它可能确定
dotValue
应为20
。具有上述数据的要素将以 6 个紫点、100 个蓝点、无黄点、60 个绿点和 5 个红点的随机位置进行渲染。建议值是基于要素抽样计算的。因此,使用相同的参数多次执行此方法可能会产生不同的结果。
为方便更复杂的自定义可视化创作应用程序,还提供了其他选项。
参数:规范:params Object根据一组互补的数字字段生成网点密度可视化的输入参数。各参数详细信息见下表。
详述:生成可视化的面状图层。
view MapView可视化将在其中呈现的 MapView 实例。
一组互补的数字字段/表达式,用作点密度可视化的基础。
详述:field Stringoptional数字字段的名称。
label Stringoptional描述图例中字段名称(或类别)的标签。 如果给定字段没有直观的字段名称或别名,则应使用此选项。
valueExpression Stringoptional遵循 Arcade Visualization Profile 定义的规范的 Arcade 表达式。 表达式可以使用
$feature
全局变量引用字段值,并且必须返回一个数字。 此属性覆盖field
属性,因此用于代替输入field
值。valueExpressionTitle Stringoptional描述
valueExpression
返回值的文本。dotValueOptimizationEnabled Booleanoptional默认值: true表示是否根据视图的比例改变每个点的值。这将设置输出渲染器的 referenceScale。
dotBlendingEnabled Booleanoptional默认值: true表示是否启用在同一像素上呈现的不同色点的颜色混合。这只在高度密集和高度多样化的要素中可见。
outlineOptimizationEnabled Booleanoptional默认值: false表示面状轮廓宽度是否应根据视图比例而变化。当为 false 时,输出渲染器中不会使用轮廓。
legendOptions Objectoptional提供用于修改描述可视化的图例属性的选项。
详述:unit Stringoptional表示图例中每个点所代表的单位。 例如,在人口密度图中,您可以将
people
的值设置为此参数。 输出渲染器将在图例中显示1 dot = 300 people
。dotDensityScheme DotDensitySchemeoptional在创作应用程序中,用户可以选择预定义的点密度方案。 将方案对象传递给此属性以避免根据视图的背景获取一个。
signal AbortSignaloptional允许取消请求。如果被取消,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; });
类型定义
-
RendererResult
-
createRenderer() 方法的结果对象。有关每个属性的详细信息,请参见下表。
- 属性:
-
renderer DotDensityRenderer
表示网点密度可视化的对象。设置图层的
renderer
属性来更新它的可视化效果。dotDensityScheme DotDensityScheme渲染器基于视图的背景使用的点密度方案。
basemapId String用于确定点的最佳颜色的底图 ID。
basemapTheme String表示输入视图底图的平均颜色是
浅色
还是深色
。