从 python scipy 过滤 voronoi 图

Filtering the voronoi diagram from python scipy

我正在使用 python scipy 从二维中的一组点计算 voronoi 图,如下所示:

import numpy as np
from scipy.spatial import Voronoi
x = np.random.uniform(-1, 1, (1000, 2))

v = Voronoi(x)

我对 voronoi 对象的不同属性感到很困惑。我现在基本上想做的是过滤掉所有在两个维度上都超过 -0.5 和 0.5 的顶点。

您必须解释 "filter" 的含义(过滤掉?)。在任何情况下,您都可以获得 voronoi 形状的顶点和几种类型的脊:

    verts = v.vertices

,这将给出一个包含两列的数组(顶点的 x 和 y 坐标)。您可以像处理 numpy 数组一样屏蔽它们(例如 verts[:,0] > -0.5),并根据需要使用它们。

我不完全确定这是否能回答您的问题,但您可以找到一个很好的教程 here,包括绘图。