高德地图热力图怎么开
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高德地图热力图怎么开相关的知识,希望对你有一定的参考价值。
参考技术A热力图其实就是我们手机定位这个地区可以显示出该地图的用户数量,然后将这个数量来渲染地图颜色。那么高德地图热力图怎么开呢,下面由我来告诉大家吧。
高德地图热力图怎么开
1、打开高德地图app,点击右上角的菱形图标。
2、选择【环境地图】,进入后就可以看到热力图。
本文以苹果se2为例适用于ios15系统高德地图v11.10.2版本
滴滴热力图-JS版 (基于高德地图)
// 地图开始
//创建地图
var lnglat = [116.4717292786, 39.9997419717];
var map = new AMap.Map(‘map_container‘, {
resizeEnable: true,
center: lnglat,
zoom: 3
});
var latDistance = 1.0 / 111322 * Math.cos(45*Math.PI / 180);//每一米代表多少度
var lonDistance = 1.0 / 111322;
// var longitude = 73.450605; // 116.4717292786;
// var latitude = 53.600613; // 39.9997419717;
var radius = 1000;//1000米
var left_lng = 0, up_lat=0, right_lng=0, down_lat=0;
var path = [];
$.ajax({ // 接口获取边界值集合
type: "post",
url: ‘border‘,
data: $("form").serialize(), //参数值
dataType: ‘json‘,
success: function (resp) {
if (resp.code != 0) {
layer.msg(resp.msg);
} else {
//限定边界值
left_lng = resp.left_lng; // 左边经度
up_lat = resp.up_lat; // 下边纬度
right_lng = resp.right_lng; // 右边经度
down_lat = resp.down_lat; // 下边经度
// 根据三角函数 边界值 计算分段长度
var dis_long = Math.ceil(AMap.GeometryUtil.distance([left_lng, up_lat], [right_lng, down_lat]));
var count_lenth = Math.ceil(dis_long/(2*radius));
// console.log([left_lng, up_lat], [right_lng, down_lat], dis_long, 2*radius, count_lenth);
// 划区域
$.each(resp.data, function(i_list, result_list){
// 画六边形
draw_other_lng_lat(left_lng, up_lat, count_lenth, result_list);
var path = [];
$.each(result_list, function (i_r, result) {
//
var latLng = new AMap.LngLat(result[0],result[1]);
path.push(latLng);
});
// 画边界
draw_list(path, ‘‘,‘#1c22ff‘);
});
}
},
});
function draw_other_lng_lat(longitude, latitude, count_lenth, result_list) {
longitude = Number(longitude);
latitude = Number(latitude);
// for (var i_total=0; i_total<count_lenth; i_total+=10) {
sleep(300).then(()=> { // 睡眠1s
for (var i = 0; i <= count_lenth; i++) {
var mLongitude = longitude + i * 1.5 * radius * lonDistance;
for (j = 0; j <= count_lenth+6; j++) {
var mLatitude = latitude - 2 * j * radius * Math.sin(60 * Math.PI / 180) * latDistance;
if (i % 2 != 0) {
mLatitude += radius * Math.sin(60 * Math.PI / 180) * latDistance;
}
console.log(1);
var inRing = AMap.GeometryUtil.isPointInRing([mLongitude,mLatitude], result_list); // 是否在多边形内