• geoscene/smartMapping

heatmap

AMD: require(["geoscene/smartMapping/renderers/heatmap"], (heatmapRendererCreator) => { /* code goes here */ });
ESM: import * as heatmapRendererCreator from "@geoscene/core/smartMapping/renderers/heatmap";
类: geoscene/smartMapping/renderers/heatmap
起始版本:GeoScene Maps SDK for JavaScript 4.11

此对象包含一个辅助方法,用于为点图层生成 HeatmapRenderer

需要注意的是,输入图层必须具有输入视图中可用的要素,以便 createRenderer() 方法生成有意义的热点图。否则,该方法将失败。

已知限制

仅支持具有点几何的图层。

方法概述

名称 返回值类值 描述 对象
Promise<HeatmapRendererResult>

生成一个 HeatmapRenderer,可直接将其应用于用于调用此方法的图层。

更多详情
heatmap
HeatmapRenderer

允许您使用不透明度更新 HeatmapRenderercolorStops,以使热点图的低密度区域淡出。

更多详情
heatmap

方法详细说明

createRenderer(params){Promise<HeatmapRendererResult>}

生成一个 HeatmapRenderer,可直接将其应用于用于调用此方法的图层。渲染器使用视图背景的最佳颜色将点表示为连续表面。

当输入视图的范围内至少有一些点可见时,应调用此方法。如果视图中没有任何点,则响应将不会返回有用的可视化效果。

在大多数情况下,您将提供 layerview 和可选的 field 来生成此渲染器。在这种情况下,数据的统计信息和分布不是众所周知的,并且用户不知道要在可视化中使用什么颜色。

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

参数
规范
params Object

输入参数,用于根据从给定字段返回的数据生成热点图可视化。各参数的详细信息见下表。

规范

为其生成可视化效果的点图层。

将在其中渲染可视化的视图实例。

field String
optional

将查询其数据以进行统计并用作数据驱动可视化的基础的字段名称。field 的值在热点图中用作乘数,使具有高字段值的区域比具有低字段值的要素的区域更热。

heatmapScheme HeatmapScheme
optional

在制作应用程序中,用户可以选择预定义的热点图方案。将方案对象传递到此属性,以避免基于视图的背景获取方案对象。

optional

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

fadeRatio Number
optional
默认值:0.2

指示透明度使低色标淡出的程度,以便在热点图边缘创建模糊边界。0 值可在低色标上形成离散边界。

fadeToTransparent Boolean
optional
默认值:true

指示热点图是否应将其颜色褪至透明。如果为 false,将忽略 fadeRatio 参数。

radius Number
optional
默认值:18

以点为单位的 radius,用于确定每个点的影响区域。半径越大,表示点对周围点的影响更大。

minRatio Number
optional
默认值:0.01

在输出渲染器的 HeatmapRenderer.colorStops 中使用的最小比率

maxRatio Number
optional
默认值:1

在输出渲染器的 HeatmapRenderer.colorStops 中使用的最大比率

optional

允许可取消的请求。如果取消,则承诺将被拒绝,并返回一个名为 AbortError 的错误。另请参见 AbortController

返回
类型 描述
Promise<HeatmapRendererResult> 解析为 HeatmapRendererResult 的实例。
示例
let earthquakeLayer = new FeatureLayer({
  // url to a point dataset
});

// visualization based on field

let heatmapParams = {
  layer: earthquakeLayer,
  view: view,
  field: "magnitude"
};

// when the promise resolves, apply the renderer to the layer
heatmapRendererCreator.createRenderer(heatmapParams)
  .then(function(response){
    earthquakeLayer.renderer = response.renderer;
  });
updateRenderer(params){HeatmapRenderer}
起始版本:GeoScene Maps SDK for JavaScript 4.25

允许您使用不透明度更新 HeatmapRenderercolorStops,以使热点图的低密度区域淡出。

参数
规范
params Object

使用给定的 fadeRatio 更新热点图渲染器的输入参数。

规范

要为其添加或移除不透明度的热点图渲染器。

fadeRatio Number
optional

指示透明度使低色标淡出的程度,以便在热点图边缘创建模糊边界。0 值可在低色标上形成离散边界。

返回
类型 描述
HeatmapRenderer 更新的 HeatmapRenderer。
示例
const renderer = heatmapRendererCreator.updateRenderer({
  renderer: layer.renderer
  fadeRatio: 0.7
});
layer.renderer = renderer;

类型定义

HeatmapRendererResult

createRenderer() 方法的结果对象。各属性的详细信息见下表。

属性

配置为最佳匹配视图背景和数据分布的渲染器对象。在图层的 renderer 属性上对它进行设置以更新其可视化效果。

渲染器使用的配色方案。

defaultValuesUsed Boolean

表示在图层中没有足够的数据和/或统计数据时是否使用默认值。当所有要素都具有相同的字段值或根本没有值时,通常使用默认值。

为给定图层和视图生成具有最佳值的渲染器所需的基本统计信息。

basemapId String

底图的 ID,用于确定热点图的最佳色标。

basemapTheme String

表示输入视图底图的平均颜色是 light 还是 dark

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息