小编baj*_*537的帖子

曼哈顿度量的 Voronoi 图

我正在使用scipy.spatialVoronoi 图的可视化。然而,这里使用的距离度量是欧几里德(L2)。我正在寻找一种在我的 Voronoi 图上进行曼哈顿 (L1) 度量的方法。有没有一种简单的(或多或少)方法可以做到这一点?

import numpy as np
import matplotlib.pyplot as plt

points = np.array([[1.5, 1.], [3.5, 1.], [5., 2.], [2.5, 3.], [3.5, 1.], [4., 4.]])
    
from scipy.spatial import Voronoi, voronoi_plot_2d
vor = Voronoi(points)

fig = plt.figure()
ax = fig.add_subplot('111')
ax.plot(points[:, 0], points[:, 1], 'o', color='k')
ax.set_xlim([-1, 9])
ax.set_ylim([-1, 9])
voronoi_plot_2d(vor, ax)
Run Code Online (Sandbox Code Playgroud)

基本上我想要得到类似的东西,但采用 L1 度量。

在此输入图像描述

我发现scipy.spatial.distance.cityblock可以处理感兴趣的指标,但不完全确定如何实现它才能正常工作?

python voronoi scipy

6
推荐指数
1
解决办法
1450
查看次数

标签 统计

python ×1

scipy ×1

voronoi ×1