【发布时间】:2015-08-22 03:21:16
【问题描述】:
我在使用谷歌热图时遇到了一个奇怪的问题。热图随着热图数据中坐标数量的增加而显示较少的数据点。 对于 333 个坐标,热图显示如下数据点:
如您所见,对于 333 个坐标,数据点比 9885 个坐标多。但它应该为大数据显示更多数据点。 我的代码:
var map = new google.maps.Map(document.getElementById('bcak_track_map'), {
zoom:19,
center:{lat:parseFloat(flat), lng:parseFloat(flon)},
mapTypeId:google.maps.MapTypeId.SATELLITE
});
map.setTilt(45);
var heatMapBounds = new google.maps.LatLngBounds();
var markerCount = 0;
$.each(marker_points, function (key, val) {
var myLatLon = new google.maps.LatLng(parseFloat(val.latitute), parseFloat(val.longtute));
heatArr[markerCount] = {location: myLatLon, weight: 2};
heatMapBounds.extend(myLatLon);
markerCount++;
});
var sheatmap = new google.maps.visualization.HeatmapLayer({
data:new google.maps.MVCArray(heatArr),
radius:30
});
sheatmap.setMap(map);
map.fitBounds(heatMapBounds);
bounds = new google.maps.LatLngBounds(null);
数据进入marker_points
[
Object { latitute="33.65112310998252", longtute="-117.98994390000001"},
Object { latitute="33.650867", longtute="-117.990379"},
Object { latitute="33.650867", longtute="-117.990379"},
Object { latitute="33.650855606216076", longtute="-117.99054136256564"},
Object { latitute="33.650867", longtute="-117.990379"},
Object { latitute="33.651302292183665", longtute="-117.99096972341766"},
Object { latitute="33.65106477008209", longtute="-117.99117056945039"}
......
]
谁能帮我显示热图正确的数据点?
【问题讨论】:
-
数据是什么样的?请提供一个Minimal, Complete, Tested and Readable example 来说明问题在问题本身(如果可能)。
-
是的,与点数相比,
marker_points提供的数据听起来更有可能是个问题 -
@ducan 数据是使用 ajax 为不同的日期范围正确提供的。我可以在 firebug 控制台中看到。每次坐标增加时,热图上的数据就会减少。
-
没有关系。热图上的坐标和数据点的数量是相反的。因为更多的坐标代表热图上的更少数据。
标签: google-maps google-maps-api-3 pheatmap