将matplotlib._png导入为_png导入:错误:DLL加载失败:找不到指定的模块

时间:2015-11-01 05:43:21

标签: python-2.7 matplotlib windows-7 anaconda

我使用的是Anaconda Python发行版:带有Windows 7 SP1 x64 Ultimate的Python 2.7 x64。

当我import matplotlib.pyplot时,我得到ImportError: DLL load failed: The specified module could not be found.。可能是什么问题?

完整错误堆栈:

Traceback (most recent call last):
  File "C:\svn\hw4\code\test_con.py", line 1, in <module>
    import matplotlib.pyplot 
  File "C:\Anaconda\lib\site-packages\matplotlib\pyplot.py", line 27, in <module>
    import matplotlib.colorbar
  File "C:\Anaconda\lib\site-packages\matplotlib\colorbar.py", line 34, in <module>
    import matplotlib.collections as collections
  File "C:\Anaconda\lib\site-packages\matplotlib\collections.py", line 27, in <module>
    import matplotlib.backend_bases as backend_bases
  File "C:\Anaconda\lib\site-packages\matplotlib\backend_bases.py", line 56, in <module>
    import matplotlib.textpath as textpath
  File "C:\Anaconda\lib\site-packages\matplotlib\textpath.py", line 22, in <module>
    from matplotlib.mathtext import MathTextParser
  File "C:\Anaconda\lib\site-packages\matplotlib\mathtext.py", line 63, in <module>
    import matplotlib._png as _png
ImportError: DLL load failed: The specified module could not be found.

conda update -f numpyconda update -f libpngconda update -f matplotlib没有帮助。

conda list matplotlib的输出:

C:\Anaconda>conda list matplotlib
# packages in environment at C:\Anaconda:
#
matplotlib                1.4.3               np110py27_2
matplotlib-venn           0.11                      <pip>

运行conda update --all后出现问题。

10 个答案:

答案 0 :(得分:14)

我通过在我的PATH中添加[Anaconda] / Library / bin来修复我的Windows机器。

答案 1 :(得分:7)

我也遇到过这个问题。它似乎在过去一两周内出现了。似乎scipy堆栈中的某些内容编译错误。在短期内:

conda install anaconda

将您的系统恢复到稳定的anaconda分发。

答案 2 :(得分:7)

我通过安装libpng来解决这个问题:

./postgres -D /home/swapps/project/PostgreSQL/9.0/data/

答案 3 :(得分:6)

我想相关问题在这里: https://github.com/conda/conda/issues/1753

我通过重新安装Anaconda解决了同样的问题。

答案 4 :(得分:2)

在我的情况下,Anaconda默认出现的SciPy堆栈已损坏。

conda pip 是两个不同的包管理器,可用于安装python包。 conda 可以安装各种包,它将python本身安装为一个包。 pip 迎合了python用户。

conda 软件包已损坏,因此删除默认提供的软件包并使用 pip 再次安装它对我有用。

尝试以下方法:

<强> 1。创建新环境

此步骤仅作为安全措施执行。您可以跳过此步骤。

打开Anaconda提示和

conda create --name testtrial python=3  //install whichever version of Python you want 
activate testtrial

<强> 2。删除和安装新软件包

conda remove matplotlib //required only if you skipped the first step and are working in the default(root) environment 
pip install matplotlib

那应该可以解决问题。

使用conda的快速指南。

答案 5 :(得分:1)

确保在运行此操作时关闭了所有python内容。在命令提示符下使用以下代码(不是ipython提示符)会生成一个名为“working”的环境,包括Anaconda 2.2.0,Cython 0.22,Numpy 1.9.2 py33_0,Pandas 0.15.2和Python 3.3.5。

conda create -n working python=3 anaconda

然后使用环境运行

activate working

现在你可以启动ipython或笔记本,并且(至少)matplotlib应该导入。

答案 6 :(得分:0)

我遇到了同样的错误提示。最后我发现我在不同的环境中打开了jupyter笔记本,而不是我之前使用过的环境。这意味着该模块不在您的jupter noetbook环境的目录中。所以我只是在原来的环境中打开jupyter笔记本,问题解决了。

答案 7 :(得分:0)

尝试降级到较低版本,此命令对我有用:

conda install libpng=1.6.22

这也降低了matplotlib和其他一些软件包的评级,但似乎在一起很好。

答案 8 :(得分:0)

以前,我也遇到了同样的问题,可以通过下载最新的受支持的Visual C ++下载可再发行文件来解决。

链接:https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

答案 9 :(得分:0)

我刚刚卸载了当前的 numpy 并从 this 链接安装了一个轮子 numpy。

这解决了我的问题。我想我们不应该使用来自随机来源的 dll