[英]how to find nearest point within querybox(query area) using rtree, python
我是 python 新手,我正在使用 import rtree 庫。 我將二維點數據索引到 rtree 並指定查詢框(矩形)。 我應該得到位於查詢框中的點。 但是我得到了查詢框之外的最近點。
My code is below
from rtree import index
idx = index.Index()
left, bottom, right, top = (0.0, 0.0, 1.0, 1.0)
idx.insert(0, (1,2))
idx.insert(1, (8,2))
idx.insert(2, (6,2))
idx.insert(3, (1,2))
idx.insert(4, (2,2))
idx.insert(5, (3,2))
idx.insert(6, (7,2))
idx.insert(7, (1,2))
idx.insert(8, (8,2))
idx.insert(9, (6,2))
query_box = [100,29,144,90]
list(idx.nearest((query_box)))
但我得到的結果超出了查詢框。
from rtree import index
idx = index.Index()
left, bottom, right, top = (0.0, 0.0, 1.0, 1.0)
idx.insert(0, (1,2))
idx.insert(1, (8,2))
idx.insert(2, (6,2))
idx.insert(3, (1,2))
idx.insert(4, (2,2))
idx.insert(5, (3,2))
idx.insert(6, (7,2))
idx.insert(7, (1,2))
idx.insert(8, (8,2))
idx.insert(9, (6,2))
query_box = [100,29,144,90]
list(idx.nearest((query_box)))
Out[142]: [1, 8]
在輸出中,您可以看到 rtree 正在返回靠近查詢框外部的索引 1、8。 但我只需要位於查詢框中的點。 他們是否建議使用 rtree 獲取位於查詢框中的點。
如果你想要交集,使用方法intersection
。
該方法nearest
返回最近的鄰居,顧名思義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.