地理座標に基づいて距離を計算する場合、ハーバーサイン公式の利用が広く採用されています。ただし、球形の地球を前提としているため、誤差が生じる可能性があります。より正確な計算を行うには、惑星の楕円体の性質を考慮する必要があります。
提供されたコードでは、ハーバーサイン公式は正しく実装されていますが、問題は仮定の不正確さにあります。ハバーサイン公式には最大 0.5% の誤差があることが知られています。
解決策として、Python ライブラリ GeoPy は geopty. distance モジュールを使用した堅牢な距離計算を提供します。このモジュールは、精度を高めるために WGS-84 のような楕円体モデルを採用する Vincenty 距離式を利用します。
これをコードに実装するには、次の手順を使用します。
例:
<code class="python">import geopy.distance coords_1 = (52.2296756, 21.0122287) coords_2 = (52.406374, 16.9251681) distance_km = geopy.distance.geodesic(coords_1, coords_2).km print('Distance (in kilometers):', distance_km)</code>
このアプローチでは、ハーバーサイン公式と比較してより正確な距離計算が行われます。
以上がハバーサイン公式を超えて地理的距離の計算の精度を向上するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。