我正在使用leaflet和leaflet heatmap来做以下事情。我有几个点显示感兴趣的位置,每个点都与一个特定的半径相关联,该半径对应于每个位置的可步行程度(例如3英里、5英里等)。我想:
1)。用一些与该点的半径相对应的“斑点”包围每个点,理想情况下,当一个人离开该点的中心时,它会变得更暗。
2)。当我放大和缩小地图时,适当缩放半径。
下面是我的javascript:
//just some sample single location
text = "lat;long;walk\n39.1101;-84.5758;3";
var lines = text.split("\n");
var heatData = [];
for (var i=1; i<lines.length; i++) {
var parts = lines[i].split(",");
heatData.push( [ parts[0], parts[1], 1. ] )
}
var heat = L.heatLayer(heatData, {radius: 20, blur: 10, scaleRadius: true, max: 0.1, max_zoom: 20 }).addTo(map);
对于问题1:“半径”是提供可步行半径(heatData 2)的正确数量吗?如果是这样,我该怎么做呢?
对于问题2:下面是放大和缩小的点的图像,您可以看到该点周围的斑点的半径没有正确缩放
放大:
缩小-半径保持不变,但我希望它更小,以反映相对于新比例的实际可步行区域:
非常感谢!
发布于 2018-08-31 01:14:48
我将为每个半径值(3英里、5英里等)创建栅格热图图层。并将它们作为图层添加到地图中。然后,在所有缩放级别下,它们都将与该点保持正确的距离,并且您不必使用复杂的函数来更改热图的聚类。
https://stackoverflow.com/questions/52100555
复制相似问题