KDTree 双精度整数
KDTree double type integers
我有一个二维坐标列表,我正在从中创建 kdtree
。坐标的类型为 double
- 例如[508180.748, 195333.973]
我使用 numpy 创建数组,然后使用 scipy 的 KDTree 函数。
import numpy as np
import scipy.spatial
points_array = np.array(points)
kdt = scipy.spatial.KDTree(points_array)
# Query
tester = kdt.query_pairs(20)
tester = list(tester)
print(tester[0])
这个returns:
(109139, 109144)
结果丢失了原始数据的分辨率。如何保持双精度浮点格式?
这些是点数组中的索引,而不是点本身的坐标值。该元组有两个索引,一个对应数组中的每个点,该点是一对的一部分,其在您的坐标 space 中的间隔小于查询距离。
要查看点对中的坐标值,您可以执行以下操作:
tester = kdt.query_pairs(20)
tester = list(tester)
print(points_array[tester[0][0]], points_array[tester[0][1]])
我有一个二维坐标列表,我正在从中创建 kdtree
。坐标的类型为 double
- 例如[508180.748, 195333.973]
我使用 numpy 创建数组,然后使用 scipy 的 KDTree 函数。
import numpy as np
import scipy.spatial
points_array = np.array(points)
kdt = scipy.spatial.KDTree(points_array)
# Query
tester = kdt.query_pairs(20)
tester = list(tester)
print(tester[0])
这个returns:
(109139, 109144)
结果丢失了原始数据的分辨率。如何保持双精度浮点格式?
这些是点数组中的索引,而不是点本身的坐标值。该元组有两个索引,一个对应数组中的每个点,该点是一对的一部分,其在您的坐标 space 中的间隔小于查询距离。
要查看点对中的坐标值,您可以执行以下操作:
tester = kdt.query_pairs(20)
tester = list(tester)
print(points_array[tester[0][0]], points_array[tester[0][1]])