Mengira Jarak Antara Titik Menggunakan Latitud dan Longitud
Dalam percubaan untuk melaksanakan formula untuk mengira jarak berdasarkan latitud dan longitud, pengguna telah menghadapi ketidakkonsistenan dengan kod mereka. Formula yang diberikan menunjukkan hasil yang menjanjikan dalam applet, tetapi menggunakan formula yang sama dalam kod Python menghasilkan jarak yang salah.
Sebab di sebalik percanggahan ini terletak pada sifat kaedah pengiraan jarak Vincenty yang tidak digunakan lagi. Dalam versi GeoPy sebelum 1.13, jarak Vincenty ialah kaedah lalai untuk mengira jarak, manakala versi 1.13 dan ke atas telah memperkenalkan geopy.distance.distance() sebagai kaedah pilihan.
Kaedah jarak Vincenty menggunakan model ellipsoidal , seperti WGS-84, yang memberikan hasil yang lebih tepat berbanding dengan formula haversine yang menganggap Bumi sfera. Andaian ini boleh menyebabkan ralat sehingga 0.5%.
Untuk mengira jarak dengan tepat, pengguna harus menggantikan pelaksanaan formula jarak Vincenty dengan kod berikut:
import geopy.distance coords_1 = (52.2296756, 21.0122287) coords_2 = (52.406374, 16.9251681) print(geopy.distance.geodesic(coords_1, coords_2).km)
Kod ini akan hitung jarak antara dua titik menggunakan model ellipsoidal yang lebih tepat dan pulangkan hasilnya dalam kilometer.
Atas ialah kandungan terperinci Mengapa Pengiraan Jarak Geopi Saya Tidak Tepat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!