【发布时间】:2016-06-18 18:20:34
【问题描述】:
我正在尝试运行以前运行的应用程序。它曾经在 Ubuntu 和 Windows 7 上运行。我现在有一台 Windows 10 机器,但代码失败了。可能是因为我现在使用的是 python 3.5,但坦率地说,我不记得我在其他机器上使用了什么(这些机器不再可用)。
重点是:
import matplotlib
matplotlib.use("TkAgg")
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
前段时间已从各个地方取出。但是,现在当我运行它时,它会抛出一个错误:
Traceback (most recent call last):
File "C:\....py", line 17, in <module>
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
File "C:\Users\...\AppData\Local\Programs\Python\Python35-32\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 13, in <module>
import matplotlib.backends.tkagg as tkagg
File "C:\Users\g...\AppData\Local\Programs\Python\Python35-32\lib\site-packages\matplotlib\backends\tkagg.py", line 9, in <module>
from matplotlib.backends import _tkagg
ImportError: DLL load failed: The specified module could not be found.
在交互式会话中,似乎是第三行失败了:
>>> import matplotlib
>>> matplotlib.use("TkAgg")
>>> from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
File "C:\Users\...\AppData\Local\Programs\Python\Python35-32\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 13, in <module>
import matplotlib.backends.tkagg as tkagg
File "C:\Users\...\AppData\Local\Programs\Python\Python35-32\lib\site-packages\matplotlib\backends\tkagg.py", line 9, in <module>
from matplotlib.backends import _tkagg
ImportError: DLL load failed: The specified module could not be found.
我试过了
pip uninstall matplotlib
pip install matplotlib
在命令提示符下,但错误仍然存在。
好像有python-matplotlib-tk包,但我不确定这是什么。
我应该退回到 python 3.4,还是有解决方案?这是一个已知问题吗?
针对以下关于安装 matplotlib 的评论:
C:\>pip install matplotlib
Collecting matplotlib
Downloading matplotlib-1.5.1-cp35-none-win32.whl (6.2MB)
100% |################################| 6.2MB 67kB/s
Requirement already satisfied (use --upgrade to upgrade): numpy>=1.6 in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from matplotlib)
Requirement already satisfied (use --upgrade to upgrade): pytz in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from matplotlib)
Requirement already satisfied (use --upgrade to upgrade): python-dateutil in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from matplotlib)
Requirement already satisfied (use --upgrade to upgrade): cycler in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from matplotlib)
Requirement already satisfied (use --upgrade to upgrade): pyparsing!=2.0.4,>=1.5.6 in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from matplotlib)
Requirement already satisfied (use --upgrade to upgrade): six>=1.5 in c:\users\...\appdata\local\programs\python\python35-32\lib\site-packages (from python-dateutil->matplotlib)
Installing collected packages: matplotlib
Successfully installed matplotlib-1.5.1
【问题讨论】:
-
这里是一个在 python 3.4 中使用这种方法的教程的链接:here
-
你是如何安装 matplotlib 的?都编译正确了吗?
-
@MattDMo,是的。请参阅问题中的点子报告
-
哦,对了,我忘了 PyPI 上有 Windows 轮子。下一个问题:你能成功
import tkinter吗? -
我将尝试回到 python 3.4。看来我还需要 Microsoft Visual C++ 10.0,它(据我所知)是 Visual Studio Community 2015。我现在正在安装它。其他人说尝试从sourceforge 安装numpy,我可能会尝试下一个。
标签: python matplotlib tkinter