按最近距离排列地理位置的python库
py-geo-nearb的Python项目详细描述
PY GEO附近套餐
它使用geopy包来识别两个地理坐标之间的距离,并根据最近的距离进行排列。
例如)考虑以下情况,
a是起点
A和B之间的距离=3公里
A和C之间的距离=2公里
B和C之间的距离=3公里
B和D之间的距离=4公里
C和D之间的距离=2公里
所有地方,即b、c和d必须从a处参观。但是,必须先参观a处最近的地方,然后再参观a处最近的地方,以此类推。
在上面的示例中,
从A,C是最近的位置。
离C,D最近。
从D,B是最近的位置。
因此,基于最近距离的序列是a->;c->;d->;b
总距离=2+2+4=8公里
安装
pip install geopy
pip install py-geo-nearby
声明
import py_geo_nearby.py_geo_nearby as pygn
参数
Parameter | Meaning | Sample Values |
---|---|---|
list | python variable containing the list of locations | any variable name |
注意:每个列表条目应该正好有3个值,即纬度、经度和位置名称。列表的第一个条目将被视为起始位置。
用法示例
代码
import py_geo_nearby.py_geo_nearby as pygn
rows = [
['12.92509', '80.10087', 'Tambaram,Chennai'],
['12.95601', '80.14353', 'Saravana Stores,Chromepet, Chennai'],
['12.92264', '80.131151', 'Selaiyur,Chennai'],
['12.90885', '80.09903', 'Perungalathur,Chennai'],
['12.93675', '80.16917', 'Hasthinapuram, Chennai'],
['12.86956', '80.16775', 'Sholinganallur, Chennai'],
['12.96829', '80.0962', 'Thirumudivakkam, Chennai']
]
places,totalDistance = pygn.nearby(rows)
print(places,totalDistance)
输出
(['Tambaram,Chennai',
'Perungalathur,Chennai',
'Selaiyur,Chennai',
'Saravana Stores,Chromepet, Chennai',
'Hasthinapuram, Chennai',
'Sholinganallur, Chennai',
'Thirumudivakkam, Chennai'],
33.881469236248286)