我想使用客戶端JavaScript通過簡單的平均值計算來查找一組緯度+經度(實際上是Google LatLng對象)的質心。查找一組緯度的質心(簡單均值)
我看到類似的問題在堆棧溢出之前已經被問了很多次,但是我找不到一個簡單直接的JavaScript答案。 (這可能只是我的谷歌搜索失敗,如果這是一個重複道歉)
我有這樣的事情,但它不適用於你的平均情況,比如緯度179和-179,所以重心應該是180,而不是0
var avg_lat, avg_lng;
for (var i = 0; i < google_latlngs.length; i++) {
avg_lat += google_latlngs[0].lat();
avg_lng += google_latlngs[1].lng();
}
avg_lat = avg_lat/google_latlngs.length;
avg_lng = avg_lng/google_latlngs.length;
我需要在客戶端JavaScript有效地做到這一點,我的觀點是不太可能比相隔幾公里多,所以great-在這種情況下,圓距或任何幻想真的沒有必要。
感謝您的幫助。
更新:好的,任何在JavaScript中查找質心的方法都可以。
'179'和'-179'的平均值_is_零;你的代碼工作正常。如果你想只有正數,請看['Math.abs()'](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Math/abs)。 – Bojangles 2011-12-19 16:53:45
很抱歉,我的意思是經度179和-179,其中質心應該是180,而不是0,這是世界的一半。我應該編輯這個問題嗎? – Richard 2011-12-19 16:55:49