Loading

Leaflet-vue 热力图 (设置热力图颜色)

使用的热力图是 heatmap.js

因为是Leaflet,所以还要引入一个对应的插件 leaflet-heatmap.js,这个插件就在heatmap目录下的plugins里面。

代码如下:

import "heatmap.js";
import HeatmapOverlay from "@/utils/leaflet-heatmap.js";

let cfg = {
  radius: 0.5, //半径
  maxOpacity: 0.8, //最大透明度
  scaleRadius: true,//设置热力点是否平滑过渡
  useLocalExtrema: false,//使用局部极值
  latField: "lat",//纬度
  lngField: "lng",//经度
  valueField: "count" ,
  gradient: { 0.25: "rgb(0,255,128)", 0.55: "rgb(0,255,255)", 0.85: "rgb(0,128,255)", 1.0: "blue"} //此处为设置颜色
};
this.heatmapLayer = new HeatmapOverlay(cfg);
this.heatmapLayer.addTo(this.heatMapLayerGroup);

//处理数据,此处代码部分省略
this.mapData.data.push({
  lat: data.at, 
  lng: data.ng, 
  count: data.value
})

this.heatmapLayer.setData(this.mapData);

 

坑1:官方文档中并没有提示如何修改颜色,我胡乱试出来才发现可以。

坑2:此热力图无法与地图旋转插件一起使用,热力图不会跟随地图旋转。

posted @ 2024-07-05 11:39  真正的大英雄  阅读(237)  评论(0编辑  收藏  举报