经纬志
首页 / OpenLayers / 使用示例

热力图

上千个点直接画成圆点会糊成一片,热力图按点密度着色,一眼看出聚集区域。 示例生成 1200 个带权重的采样点,两个滑块控制着色范围。

OpenLayers 10.3.1 · 更新 2026-10-27
源码与运行效果
运行效果

说明

ol.layer.Heatmap 本身就是一个矢量图层,接 ol.source.Vector。它把每个点按半径画成灰度圆, 叠加后用高斯模糊柔化,再按密度映射到渐变颜色。 三个参数决定观感:

参数作用调大的效果
radius单个点的像素半径色斑更粗,细节更少
blur模糊像素尺寸过渡更平滑,边界更糊
weight每点贡献的权重可用属性值让重点点位更突出

权重用函数写法,读取要素上的 weight 属性, 值域控制在 0 到 1 之间。超过 1 的权重会让整片区域直接饱和成最高色。

gradient 接受颜色数组,从低密度到高密度依次映射,长度不限。 不给时用默认的蓝到红渐变。深色底图上把低密度色改成透明感更强的深蓝, 视觉效果会比标准配色干净。