这是我的塔林小热图,有 3 个来源:
如您所见,此 map 示例中没有“红色”部分。
但是当我缩小时,我得到了这个:
当您缩小时,我需要我的热图具有橙黄色绿色,而不是红色。
如何使用 Heatmap 和 google-maps-api
实现这一点(可选)。
注:
我做了一个缩小事件来改变半径,我认为这个事件也可以帮助我解决这个问题,但我不知道我应该改变什么配置:
google.maps.event.addListener(map, 'zoom_changed', function() {
var zoomLevel = map.getZoom();
heatmap.setOptions({radius:zoomLevel*0.5});
});
最佳答案
我按如下方式解决了这个问题:
function getHeatMapRadius(latitudeCoordinate) {
var distanceInMeter = 3; /* meter distance in real world */
var meterPerPixel = 156543.03392 * Math.cos(latitudeCoordinate * Math.PI / 180) / Math.pow(2, zoom);
var radius = distanceInMeter / meterPerPixel;
return radius;
}
这里是 source对于上述公式。
关于javascript - 缩小事件的热图权重变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30107733/