python pymongo 經緯度座標距離計算

2021-07-31 15:13:13 字數 797 閱讀 6130

python通過mongodb判斷某個經緯度的點是否在另乙個經緯度點設定的某個半徑範圍內

import pymongo

mongodb_cli = pymongo.mongoclient("mongodb:")

reader_pos_list=[116.41799927,39.90894619]  # [經度,緯度]

mongodb_cli["db_name"]["col_name"].find(}})

應用說明,在mongodb中建乙個db_name的資料庫,表名為col_name,表中包含欄位key_name,key_name的值為list形式,存放經緯度[經度,緯度]

通過上面的語句可以實現,以reader_pos_list為圓心,1000公尺為半徑的範圍內,表col_name中,key_name欄位經緯度的點在這個圓以內的所有結果。

1000/6378100表示從距離轉換成弧度

mongodb_cli["db_name"]["col_name"].ensure_index([("key_name","2dsphere")])

mongodb_cli["db_name"]["col_name"].find( })

表中到reader_pos_list點的距離小於1000公尺的點

mongodb_cli["db_name"]["col_name"].ensure_index([("key_name","2dsphere")])

mongodb_cli["db_name"]["col_name"].find( })

表中到reader_pos_list點的距離大於1000公尺的點

python pymongo庫的使用

一 連線方法 import pymongo client pymongo.mongoclient localhost 27017 db client data db client.data db clien.get database data collection db user collectio...

Python pymongo模組常用操作分析

環境 pymongo3.0.3,python3 以下是我整理的一些關於pymongo的操作,網上很多是用pymongo.connecion 去連線資料庫的,但是我這裡連線一直提示沒有這個包,如果大家有什麼解決方案或者其他需要補充的,也歡迎告訴我。一 匯入pymongo,使用mongclient連線資...

經緯度計算

define earth radius,6371 地球半徑,平均半徑為6371km 計算某個經緯度的周圍某段距離的正方形的四個點 param lng float 經度 param lat float 緯度 param distance float 該點所在圓的半徑,該圓與此正方形內切,預設值為0.5...