2012-11-20 120 views
7

我已經構建了這個android應用程序來收集我的課程項目的經度,緯度和電話信號。我的目標是將此信息移植到簡單的熱圖網頁。我的問題是什麼來更新我的熱圖數據變量在這個例子中,最好的方法:更新熱圖數據,簡單谷歌HeatMap

https://google-developers.appspot.com/maps/documentation/javascript/examples/layer-heatmap

此變量,特別是:

 var taxiData = [ 
      new google.maps.LatLng(37.782551, -122.445368), 
      new google.maps.LatLng(37.782745, -122.444586), ... 
      ]; 

我向所有人開放的建議,我很很多網站開發的新手。

回答

24

谷歌地圖使這非常簡單。你可能會在這個例子中後來發現,taxiData被加載到一個特定的谷歌陣列在這裏 -

pointArray = new google.maps.MVCArray(taxiData); 

,然後將此放入地圖爲熱圖在這裏:

heatmap = new google.maps.visualization.HeatmapLayer({ 
    data: pointArray 
}); 
heatmap.setMap(map); 

的MVCArray,因此可以更新後,地圖會自動更新。所以,如果你需要添加一個新的LatLng到你的熱圖中,簡單地說:

pointArray.push(new LatLng(<coordinates>)); 

而且地圖會更新。

+0

感謝的人,沒有意識到MVCArrays的工作就是這樣!這指向了一個很好的方向,我想我會做更多的JS教程,從字面上今天開始。 – Yonahs

+0

heh沒問題,祝你好運學習javascript! – Bubbles

+0

是否也可以更改熱圖中現有點的權重或緯度屬性?對於動畫,我希望熱圖的變化儘可能流暢。現在我通過將地圖設置爲空來清除熱圖圖層,然後設置一個包含所有新數據的圖層,但導致在短時間內沒有看到任何熱圖點。 –