html,
body,
#container {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
var map = Loca.create('container', {
mapStyle: 'amap://styles/midnight',
viewMode: '3D',
pitch: 50,
zoom: 10,
center: [116.397, 39.9],
features: ['bg', 'road']
});
var layer = Loca.visualLayer({
container: map,
type: 'point',
shape: 'prism',
// 设置正多边形顶点数量。
// 拆分 32 个顶点就可以近似看做是圆形,拆分越多越平滑,但会有性能损耗。
vertex: 32
});
var list = heatGrid.map(function (value) {
var val = value.split('$');
return {
coord: val[1],
value: +val[0]
}
});
layer.setData(list, {
lnglat: 'coord'
});
var colors = [
'#2c7bb6',
'#abd9e9',
'#ffffbf',
'#fdae61',
'#d7191c'
];
layer.setOptions({
// 单位米
unit: 'meter',
style: {
// 正多边形半径
radius: 400,
// 高度为 0 即可贴地面
height: 0,
// 顶面颜色
color: {
key: 'value',
scale: 'quantile',
value: colors
},
opacity: 0.85
}
});
layer.render();