python - 为什么 Geopy Distance.Distance 错误?

标签 python geopy

从 GeoDjango Point Field,我得到以下几点:

object1.point = "POINT(-113.4741271000000040 53.4235217000000020)"
object2.point = "POINT(-113.5013688000000229 53.5343457999999970)"

然后我使用 geopy 计算距离:

from geopy import distance
from geopy import Point

p1 = Point("-113.4741271000000040 53.4235217000000020")
p2 = Point("-113.5013688000000229 53.5343457999999970")
result = distance.distance(p1,p2).kilometers
print result
# 5.791490830933827

但是使用这个工具:http://www.movable-type.co.uk/scripts/latlong.html 我得到的距离是 12.45km

为什么会有这么大的差异?

最佳答案

您弄错了经纬度。尝试:

p1 = Point("53.4235217000000020 -113.4741271000000040")
p2 = Point("53.5343457999999970 -113.5013688000000229")

给我结果 = 12.466096663282977

关于python - 为什么 Geopy Distance.Distance 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11008380/

相关文章:

python - 如何在 PyQt4 GUI 上显示希腊字符?

python - 类型错误 : executor() takes no arguments (1 given)

python - openpyxl:在 load_workbook() 上给出错误

python - geopandas 和 geopy 的地理编码错误

Python geopy 安装

python - 如何在python中解码base64 url​​?

python - 在Python中处理.doc文件并获取有限的字符列表

python - 使用 geopy 从 Pandas 数据框中的坐标中查找国家名称

python - geopy.distance.geodesic() 但它说 TypeError : unsupported operand type(s) for +=: 'int' and 'tuple'

python - geopy 类型错误 : geocode() missing 1 required positional argument: 'query'