编辑:据我所知这是一个构建问题,我还没有弄清楚到底是什么,但是我将范围缩小了。对于阅读此书的任何人,请首先尝试标记答案中的建议。
我正在尝试使用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部件可能需要的不同方法的提及,我已经尝试过了,但似乎都不起作用,包括docs示例中的导入行。
我正在刚创建的干净的PyCharm venv中运行Python 3.6。 pip
的{{1}}安装工作正常,当我尝试导入scipy
时出现了scipy
,spatial
也是如此……但似乎没有ConvexHull
存在。
我正在使用scipy 1.1.0,并且我尝试使用已删除答案提供的导入...
from scipy.spatial.qhull import ConvexHull
...但这无效。
或者,如果这行不通,那么我愿意在可能的情况下使用其他库。
答案 0 :(得分: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
。