本文简要介绍 python 语言中 scipy.spatial.KDTree.query_ball_point
的用法。
用法:
KDTree.query_ball_point(x, r, p=2.0, eps=0, workers=1, return_sorted=None, return_length=False)#
找到点 x 的距离 r 内的所有点。
- x: 数组, 形状元组 + (self.m,)
要搜索其邻居的一个或多个点。
- r: 数组,浮点数
要返回的点的半径,必须广播到 x 的长度。
- p: 浮点数,可选
使用哪个 Minkowski p-norm。应在 [1, inf] 范围内。如果可能发生溢出,有限的大 p 可能会导致 ValueError。
- eps: 非负浮点数,可选
近似搜索。如果树的最近点比
r / (1 + eps)
更远,则不探索树的分支,如果最远点比r * (1 + eps)
更近,则批量添加分支。- workers: 整数,可选
要为并行处理安排的作业数。如果给定 -1,则使用所有处理器。默认值:1。
- return_sorted: 布尔型,可选
如果为 True,则对返回的索引进行排序,如果为 False,则不对它们进行排序。如果为 None,则不对单点查询进行排序,而是对 multi-point 查询进行排序,这是添加此选项之前的行为。
- return_length: 布尔型,可选
返回半径内的点数,而不是索引列表。
- results: 列表或列表数组
如果 x 是单点,则返回 x 的邻居的索引列表。如果 x 是点数组,则返回包含邻居列表的形状元组的对象数组。
参数 ::
返回 ::
注意:
如果您有许多要查找其邻居的点,则可以通过将它们放入 KDTree 并使用 query_ball_tree 来节省大量时间。
例子:
>>> import numpy as np >>> from scipy import spatial >>> x, y = np.mgrid[0:5, 0:5] >>> points = np.c_[x.ravel(), y.ravel()] >>> tree = spatial.KDTree(points) >>> sorted(tree.query_ball_point([2, 0], 1)) [5, 10, 11, 15]
查询多个点并绘制结果:
>>> import matplotlib.pyplot as plt >>> points = np.asarray(points) >>> plt.plot(points[:,0], points[:,1], '.') >>> for results in tree.query_ball_point(([2, 0], [3, 3]), 1): ... nearby_points = points[results] ... plt.plot(nearby_points[:,0], nearby_points[:,1], 'o') >>> plt.margins(0.1, 0.1) >>> plt.show()
相关用法
- Python SciPy KDTree.query_ball_tree用法及代码示例
- Python SciPy KDTree.query_pairs用法及代码示例
- Python SciPy KDTree.query用法及代码示例
- Python SciPy KDTree.sparse_distance_matrix用法及代码示例
- Python SciPy KDTree.count_neighbors用法及代码示例
- Python SciPy KroghInterpolator.derivatives用法及代码示例
- Python SciPy interpolate.make_interp_spline用法及代码示例
- Python SciPy stats.anderson用法及代码示例
- Python SciPy ClusterNode.pre_order用法及代码示例
- Python SciPy stats.iqr用法及代码示例
- Python SciPy FortranFile.read_record用法及代码示例
- Python SciPy ndimage.correlate用法及代码示例
- Python SciPy special.exp1用法及代码示例
- Python SciPy special.expn用法及代码示例
- Python SciPy signal.czt_points用法及代码示例
- Python SciPy interpolate.krogh_interpolate用法及代码示例
- Python SciPy ndimage.morphological_gradient用法及代码示例
- Python SciPy distance.sokalmichener用法及代码示例
- Python SciPy linalg.eigvalsh_tridiagonal用法及代码示例
- Python SciPy linalg.cdf2rdf用法及代码示例
- Python SciPy csc_array.diagonal用法及代码示例
- Python SciPy fft.idctn用法及代码示例
- Python SciPy linalg.LaplacianNd用法及代码示例
- Python SciPy linalg.solve_circulant用法及代码示例
- Python SciPy hierarchy.ward用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.spatial.KDTree.query_ball_point。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。