Maison > développement back-end > Tutoriel Python > Pourquoi mon calcul de distance Geopy est-il inexact ?

Pourquoi mon calcul de distance Geopy est-il inexact ?

Susan Sarandon
Libérer: 2024-11-05 09:23:02
original
1133 Les gens l'ont consulté

Why Is My Geopy Distance Calculation Inaccurate?

Calcul de la distance entre des points en utilisant la latitude et la longitude

Dans le but de mettre en œuvre la formule de calcul des distances en fonction de la latitude et de la longitude, les utilisateurs ont rencontré des incohérences avec leur code. La formule donnée montre des résultats prometteurs dans une applet, mais l'application de la même formule dans le code Python donne des distances incorrectes.

La raison derrière cet écart réside dans la nature obsolète de la méthode de calcul de distance Vincenty. Dans les versions GeoPy antérieures à 1.13, la distance Vincenty était la méthode par défaut pour calculer les distances, tandis que les versions 1.13 et supérieures ont introduit geopy.distance.distance() comme méthode préférée.

La méthode de distance Vincenty utilise des modèles ellipsoïdaux. , comme le WGS-84, qui fournissent des résultats plus précis que la formule haversine qui suppose une Terre sphérique. Cette hypothèse peut conduire à des erreurs allant jusqu'à 0,5%.

Pour calculer les distances avec précision, les utilisateurs doivent remplacer leur implémentation de la formule de distance Vincenty par le code suivant :

import geopy.distance

coords_1 = (52.2296756, 21.0122287)
coords_2 = (52.406374, 16.9251681)

print(geopy.distance.geodesic(coords_1, coords_2).km)
Copier après la connexion

Ce code sera calculez la distance entre les deux points en utilisant le modèle ellipsoïdal plus précis et renvoyez le résultat en kilomètres.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal