无法在我的mac上导入matplotlib.pylot

时间:2017-01-14 22:04:50

标签: python matplotlib tkinter pip virtualenv

所以我在我的mac OSX上遇到了这个令人沮丧的问题:当我运行这个导入时,我基本上得到以下错误:

import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt

我收到此错误:

ImportError: No module named _tkinter

我在Mac OSX(10.11.1)上使用Python 2.7.10,而且我在虚拟环境中。

我看了很多关于_tkinter的帖子,我试图通过pip install python-tk安装它,但它说不存在这样的模块......我不知所措如何让我的matplotlib在我的Mac上工作!

编辑:完整的错误消息:

>>> import matplotlib.pyplot as plt
>>> /Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.
  warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/pyplot.py", line 114, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 32, in pylab_setup
    globals(),locals(),[backend_name],0)
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 6, in <module>
    from matplotlib.externals.six.moves import tkinter as Tk
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/externals/six.py", line 199, in load_module
    mod = mod._resolve()
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/externals/six.py", line 113, in _resolve
    return _import_module(self.mod)
  File "/Users/billy/venv/tf012/lib/python2.7/site-packages/matplotlib/externals/six.py", line 80, in _import_module
    __import__(name)
  File "/opt/original/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 39, in <module>
    import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named _tkinter

2 个答案:

答案 0 :(得分:0)

当我尝试安装matplotlib时,几乎发生了同样的事情。尝试使用3.4并预先安装在Anaconda上。

答案 1 :(得分:0)

由于我想以最小的麻烦回到编码,我最终做的最终是:

  • 我已经有了一个/ anaconda2 / envs目录,因为(我认为)我在某些时候通过anaconda在我的Mac上安装了python。
  • Anaconda显然与virtualenv不兼容,所以我放弃了使用virtualenv为我的Mac。
  • 我只是通过 conda 创建了一个环境,(而不是 virtualenv )。 (通过:conda create -n myAwesomeEnv python=2.7.11
  • 我通过以下方式激活我的新环境:source activate ~/anaconda2/envs/myAwesomeEnv/
  • 我通过pip install matplotlib
  • 安装matplotlib
  • 现在问题中的上述matplotlib命令没有问题。