我正在使用带有Python 2.7.14的Anaconda 5.0.1。当我打开一个jupyter笔记本并尝试运行以下内容时:
%matplotlib inline
我收到以下错误:
ImportError Traceback (most recent call last)
C:\toolkits.win\anaconda2\envs\dlc\lib\site-packages\matplotlib\font_manager.py in <module>()
56
57 import matplotlib
---> 58 from matplotlib import afm, cbook, ft2font, rcParams, get_cachedir
59 from matplotlib.compat import subprocess
60 from matplotlib.fontconfig_pattern import (
ImportError: DLL load failed: The specified procedure could not be found.
当我尝试深入研究错误时,问题出在ft2font:
In [1]: from matplotlib import ft2font
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-a32e7826851f> in <module>()
----> 1 from matplotlib import ft2font
ImportError: DLL load failed: The specified procedure could not be found.
我仔细检查并确保安装了freetype:
(dlc) C:\Users\Larry>conda install freetype
Fetching package metadata .............
Solving package specifications: .
# All requested packages already installed.
# packages in environment at C:\toolkits.win\anaconda2\envs\dlc:
#
freetype 2.8 vc9hf582001_0 [vc9]
有什么想法吗?
答案 0 :(得分:1)
def _check_versions():
# Quickfix to ensure Microsoft Visual C++ redistributable
# DLLs are loaded before importing kiwisolver
from . import ft2font
尝试安装可重新分发的Microsoft Visual C ++
答案 1 :(得分:1)
我通过安装最后一个 Microsoft Visual C++ Redistributable 2019 解决了这个问题。 就我而言: 蟒蛇 3.8.7 matplotlib:20.3.3 test.py result in IDLE
答案 2 :(得分:0)
调试到同一个问题。这似乎是另一个访问拒绝的问题。
解决方案:在提升模式下重新安装matplotlib。
conda install matplotlib
答案 3 :(得分:0)
我的解决方案:卸载matplotlib,然后用 pip 重新安装。
答案 4 :(得分:0)
对上述建议进行一些改进:
pip install matplotlib --force-reinstall
答案 5 :(得分:0)
我遇到了同样的问题,并且在我的机器上,问题是在PATH变量中提到了Java(openJDK),而Python之前是该变量(在我的情况下为Anaconda)。
如果您打开cmd
并输入
echo %PATH%
您也可以检查计算机是否也是如此。如果它指出...\Java\openJDK<version>\bin
在Anaconda目录之前,则发现错误的freetype.dll
库并发生错误。
您要做的就是更改PATH,以在Java目录之前声明anaconda目录。但这可能会引起Java的另一组问题...
答案 6 :(得分:0)
conda install freetype --force-reinstall
答案 7 :(得分:0)
我发现,如果在终端正常启动时conda没有激活,则会出现此错误。
我发现通过打开终端,键入一堆东西并大量按Enter来防止conda激活,然后当我尝试运行包含matplotlib的脚本时,它将出现此错误,但是当我让它启动时在没有干扰的情况下,它不会给我这个错误(它可以正常运行,至少会超过此错误)。
考虑到这一点,如果可能的话,将import matplotlib
保留在文件顶部可能会很有用,这样您就不必等待片刻,然后发现不会加载matplotlib。