生成热力图:
//判断浏览器是否支持canvas
function isSupportCanvas(){
var elem = document.createElement('canvas');
return !!(elem.getContext && elem.getContext('2d'));
}
if(!isSupportCanvas()){
alert('热力图目前只支持有canvas支持的浏览器,您所使用的浏览器不能使用热力图功能!');
return false;
}
var overlay = new BMapLib.HeatmapOverlay({
visible:true,// 热力图是否显示,默认为true
radius:10,//热力图每个点的半径大小
opacity:100,// 热力的透明度,1-100
//热力图的渐变区间,key表示插值的位置0到1,value表示颜色值
gradient:{//假设数据划分为0到250,250到500,500到2500
0.1:'rgb(33,204,223)',
0.2:'rgb(200,215,125)',
1:'rgb(206,86,45)'
}
});
overlay.setDataSet({data:points,max:10000});//热力图的数据;权重的最大值
this.mapModel.addOverlay(overlay);
this.overlay = overlay;
热力图显示/隐藏:
this.overlay.show();
this.overlay.hide();
清除热力图:
this.mapModel.removeOverlay(this.overlay);
this.overlay = null;