Skip to content

添加热力图

调用方法

addHeatmapOverlay(option)

  1. 仅能创建一个热力图,确保所有数据准备完后渲染
  2. 要开启热力图,需要配置组件属性useHeatmap=true,此时才会加载热力图所需js数据,否则不生效。

option

名称类型说明默认
pointsPointsItem[]配置数组,必填-
visibleboolean热力图默认是否显示true
opacitynumber热力的透明度,1-100-
radiusnumber热力图的每个点的半径大小30
gradientobject热力图的渐变区间,格式-
valuestring颜色值-
maxnumber颜色值数据集中值的最大值300
successfunction调用成功回调-
failfunction调用失败回调-

PointsItem

名称类型说明
namestring点名称,必填
lngnumber点经度,必填
latnumber点纬度,必填
countnumber值,必填

gradient

json
{
  ".2": "rgb(0, 255, 255)",
  ".5": "rgb(0, 110, 255)",
  ".8": "rgb(100, 0, 255)"
}

示例代码

javascript
// 数据
const data: any = [
  { name: '海门', value: 9 },
  { name: '招远', value: 12 },
  { name: '舟山', value: 12 },
];
// 坐标数据
const geoCoordMap: any = {
  海门: [121.15, 31.89],
  招远: [120.38, 37.35],
  舟山: [122.207216, 29.985295]
};
// 数据整合
const convertData = (data: any) => {
  let res = [];
  for (let i = 0; i < data.length; i++) {
    let geoCoord = geoCoordMap[data[i].name];
    if (geoCoord) {
      res.push({
        name: data[i].name,
        lat: geoCoord[1],
        lng: geoCoord[0],
        count: data[i].value
      });
    }
  }
  return res;
};
const points = convertData(data);
// 创建热力图
TDTRenderRef.value
  .addHeatmapOverlay({
    points: points
  })

贡献者

mosowe

文档版本 v1.0.1