Matplotlib:导入错误,没有名为_path的模块。

4

我已经为一个让我疯狂的问题苦苦挣扎了数小时。我使用Cygwin安装了Python 2.7,并添加了Scipy、Numpy、Matplotlib(1.4.3)和Ipython。当我决定运行ipython --pylab时,出现了以下错误:

/usr/lib/python2.7/site-packages/matplotlib/transforms.py in <module>()
 37 import numpy as np
 38 from numpy import ma
 ----> 39 from matplotlib._path import (affine_transform, count_bboxes_overlapping_bbox,
 40     update_path_extents)
 41 from numpy.linalg import inv

 ImportError: No module named _path

我在互联网上花了数小时寻找解决方案,但没有任何作用。我注意到 matplotlib 目录中的 _path.so 文件似乎是每个人都有的,而我却没有。相反,我有两个文件:path.py 和 path.pyc。但我使用 pip install 直接从官方网站安装了 matplotlib,重新安装也没有任何不同。有人知道出了什么问题吗?如果有人可以帮助我,我将非常感激!!!


2
我不知道你遇到的具体错误是什么,但大多数人会选择安装Python发行版,如AnacondaCanopy,而不是手动添加单个组件。 - chrisaycock
你能在普通的Python解释器中运行matplotlib吗? - Aleksander Lidtke
2
“_path”是编译的C扩展程序的一部分。您的安装/编译出现了问题。请参阅http://matplotlib.org/users/installing.html#building-on-windows。 - tacaswell
Arawn,在使用pip安装matplotlib时是否出现任何错误?可能是由于编译_path.so时出了问题,但pip不知何故忽略了这个问题并安装了matplotlib的其他所有内容。你能在matplotlib的site-packages目录中找到其他的*.so文件吗? - user707650
3个回答

阿里云服务器只需要99元/年,新老用户同享,点击查看详情
4

对于其他遇到此问题的用户,我的情况下解决方法很简单。问题是由于计算机上安装了错误的matplot库,导致找不到正确的matplotlib路径而引起的错误。在我的情况下,我已经在另一个版本的python上安装了matplotlib。只需在计算机上更新matplotlib,使其与您当前使用的python版本兼容即可:

pip install --upgrade matplotlib

关于这篇文章,我不确定是什么原因导致了这些大问题。希望我的提示可以帮助到其他遇到这个问题的人!


1
'pip install --upgrade matplotlib'(升级而非更新)。由于某些原因,无法编辑答案。 - vjayky

0

我怀疑大多数通过谷歌来到这里的人都没有我遇到的问题,但以防万一:

我在Fedora 17上尝试使用matplotlib时遇到了上述“ImportError:找不到名为_path的模块”的问题,因为我只是将sys.path设置为指向我构建的最新版本(当时为1.5.1)的位置。不要这样做。

一旦我运行“python setup.py install”(作为root用户)进行正确的安装(并且摆脱了我的sys.path hack),错误就被修复了。


0

Matplotlib包需要多个依赖项(请在此处查看)。对我而言,缺少的依赖项包括pyparsing和kiwisolver,但您的结果可能会有所不同。在执行任何其他操作之前(重新安装Python或库等),请确保已安装此列表中的所有库(pip install ...)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,