【问题标题】:I can't find ConvexHull in scipy.spatial我在 scipy.spatial 中找不到 ConvexHull
【发布时间】:2019-02-26 07:02:24
【问题描述】:

编辑:据我所知,这是构建的问题,我还没有弄清楚到底是什么,但我已经缩小了范围。对于阅读本文的任何人,请先尝试标记答案中的建议。

我正在尝试使用 scipy 库中的 ConvexHull 函数来计算某些点的凸包,但 scipy.spatial.ConvexHull 似乎不存在。

文档中有这样的例子:

from scipy.spatial import ConvexHull
points = np.random.rand(30, 2)   # 30 random points in 2-D
hull = ConvexHull(points)

我尝试在我的项目中使用此示例,但无法使其正常工作..

我输入了适当的导入行,但没有找到 ConvexHull,PyCharm 用红色强调了 ConvexHull 引用,鼠标悬停显示“未找到”消息。

我在 SO 上发现了关于导入和使用部分 scipy 可能需要的不同方法的各种提及,我已经尝试过这些方法,但它们似乎都不起作用,包括文档示例中的 import 行。

我在我刚刚创建的一个干净的 PyCharm venv 中运行 Python 3.6。 pip 安装 scipy 运行良好,当我尝试导入它时,scipy 出现了,spatial 也是如此……但 ConvexHull 似乎不存在。

我正在使用 scipy 1.1.0,我尝试使用已删除答案提供的导入...

from scipy.spatial.qhull import ConvexHull... 但这不起作用。

或者,如果这不起作用,那么我愿意尽可能使用不同的库。

【问题讨论】:

  • "...但无法让它工作。"请在问题中包含准确、完整的错误消息。
  • 什么是操作系统? linux?
  • 操作系统是 Windows 10

标签: python scipy convex-hull


【解决方案1】:

https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.ConvexHull.html

你试过了吗

from scipy import spatial
spatial.ConvexHull

在 1.0.1 中,这两个都可以工作

In [2]: spatial.qhull.ConvexHull?
In [3]: spatial.ConvexHull?

查看 github 问题,可能存在一些构建问题,涉及 cython 版本,这可能会阻止构建 qhull 文件。

https://github.com/scipy/scipy/issues/8562 - CI:Appveyor 构建失败,因为它无法从 spatial.qhull 导入 ConvexHull


我升级到1.1.0,访问ConvexHull没有问题。

【讨论】:

  • 感谢您的回答 hpaulj,据我所知这是构建的问题。
猜你喜欢
  • 1970-01-01
  • 2021-07-07
  • 2021-02-04
  • 2017-05-21
  • 1970-01-01
  • 2016-02-10
  • 2011-09-10
  • 2016-01-25
  • 2017-08-15
相关资源
最近更新 更多