具有特定半径的特定缩放时的热图渲染问题
Heatmap rendering issue at certain zoom with certain radius
使用 GoogleMaps API v3.19、3.20 或 3.exp,当我将半径设置为热图图层时,在某个缩放级别渲染消失并且 Chrome 的控制台给出一个错误
Uncaught TypeError: Cannot read property '84' of undefined
,其中 '84'
有时因坐标不同而不同。此外,在远离应用热图的区域放大时,没有显示任何错误,尽管即使在更大的缩放下导航到该区域,我也遇到了完全相同的错误,并且图层就像 JPEG 伪影一样卡住了,这让我相信那里坐标有问题
放大和缩小不能解决问题。
关于这个问题有什么建议吗?任何已知错误?
更新(分享一些半径值变化的代码):
// heatmarkers is an array of WeightedLocation
heatmap = new google.maps.visualization.HeatmapLayer({
data : heatmarkers,
radius : 27
});
heatmap.setMap(myMap);
google.maps.event.addListener(myMap, 'zoom_changed', function(){
if (heatmap){
var zoom = myMap.getZoom();
if (zoom >= 14){
heatmap.set('radius', 90);
} else {
heatmap.set('radius', zoom * 2);
}
}
});
我刚刚遇到了完全相同的问题,并通过减少热图数据坐标中的小数位数解决了这个问题,例如:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
6.76483154296875,
51.226775403420554
]
}
}
已更改为:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
6.7648315429,
51.22677540342
]
}
}
希望对您有所帮助!
使用 GoogleMaps API v3.19、3.20 或 3.exp,当我将半径设置为热图图层时,在某个缩放级别渲染消失并且 Chrome 的控制台给出一个错误
Uncaught TypeError: Cannot read property '84' of undefined
,其中 '84'
有时因坐标不同而不同。此外,在远离应用热图的区域放大时,没有显示任何错误,尽管即使在更大的缩放下导航到该区域,我也遇到了完全相同的错误,并且图层就像 JPEG 伪影一样卡住了,这让我相信那里坐标有问题
放大和缩小不能解决问题。
关于这个问题有什么建议吗?任何已知错误?
更新(分享一些半径值变化的代码):
// heatmarkers is an array of WeightedLocation
heatmap = new google.maps.visualization.HeatmapLayer({
data : heatmarkers,
radius : 27
});
heatmap.setMap(myMap);
google.maps.event.addListener(myMap, 'zoom_changed', function(){
if (heatmap){
var zoom = myMap.getZoom();
if (zoom >= 14){
heatmap.set('radius', 90);
} else {
heatmap.set('radius', zoom * 2);
}
}
});
我刚刚遇到了完全相同的问题,并通过减少热图数据坐标中的小数位数解决了这个问题,例如:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
6.76483154296875,
51.226775403420554
]
}
}
已更改为:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
6.7648315429,
51.22677540342
]
}
}
希望对您有所帮助!