Google Maps API v3热图错误:"无法读取未定义的属性'HeatmapLayer'"

col*_*lin 8 javascript jquery google-maps heatmap google-maps-api-3

我正在尝试将Heatmaps图层加载到我的谷歌地图上,但出于某种原因,我只是不断收到错误"无法读取未定义的属性'HeatmapLayer'."

map = new google.maps.Map(document.getElementById("gmaps"),{
    zoom: 11,
    center: new google.maps.LatLng(39.788403, -86.19990800000001),
    mapTypeControl: false,
    streetViewControl: false,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    panControl: false
});

heatMapData = [
new google.maps.LatLng(39.77745056152344, -86.10900878906250),
new google.maps.LatLng(39.82060623168945, -86.17008972167969),
new google.maps.LatLng(39.77947616577148, -86.17008972167969),
new google.maps.LatLng(39.82987594604492, -86.13955688476562),
new google.maps.LatLng(39.74195098876953, -86.12429046630860)
];
heatmap = new google.maps.visualization.HeatmapLayer({
    data: heatMapData,
    map: map
});
Run Code Online (Sandbox Code Playgroud)

这是jsFiddle:http://jsfiddle.net/9HQ2a/3/

Erw*_*ent 27

加载google maps js时,将可视化库添加到URL.

<script async defer src="https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=visualization"></script>
Run Code Online (Sandbox Code Playgroud)

  • @Perroloco我知道对了!我甚至不记得我是如何找到它的,他们应该更好地在文档中明确表达它. (4认同)
  • OK是有道理的...但是令人难以置信的是,谷歌地图api规范中没有这方面的参考(或者至少我没有找到它) (2认同)
  • 现在应该是:`&lt;script async defer src="https://maps.googleapis.com/maps/api/js?key=[YOUR_API_KEY]&amp;libraries=visualization&amp;callback=initMap"&gt;` (2认同)