当前位置: 首页 > 知识库问答 >
问题:

Jupyter vs IPython:Matplotlib-没有名为Tkinter的模块

宇文修文
2023-03-14

我正在一个名为OpenQuake的程序中使用Python3.5。当我执行下面的行时,我得到一个导入错误“no module name'tkinter'”。

import matplotlib.pyplot as plt

Traceback (most recent call last):
  File "<ipython-input-22-964337a9f103>", line 2, in <module>
    import matplotlib.pyplot as plt
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\pyplot.py", line 114, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\backends\__init__.py", line 32, in pylab_setup
    globals(),locals(),[backend_name],0)
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 6, in <module>
    from matplotlib.externals.six.moves import tkinter as Tk
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\externals\six.py", line 90, in __get__
    result = self._resolve()
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\externals\six.py", line 113, in _resolve
    return _import_module(self.mod)
  File "C:\Program Files\OpenQuake Engine\lib\site-packages\matplotlib\externals\six.py", line 80, in _import_module
    __import__(name)
ImportError: No module named 'tkinter'

在这两种情况下引用的matplotlib模块是相同的。

总结如下:

  1. 使用Python和IPython时,上面的代码片段给出了导入错误。/li> 中成功执行 代码段在jupyter.>

有人能解释一下为什么会发生这种事吗?

共有1个答案

祁鸿晖
2023-03-14

matplotlib使用不同的后端。在Jupyter中,它通常使用 。另一方面,IPython默认使用TK后端(codebackend_tkagg.py/code>),因此尝试导入未安装的 。Jupyter不需要这个后端,因此不会尝试导入它。

Jupyter在浏览器中显示绘图结果,但IPython在终端上运行,需要一个GUI库(如TKinter)来显示。这就需要不同的后弯。

 类似资料:
  • 问题内容: 由于某种原因,我不能使用or模块。在python shell中运行以下命令后 要么 我得到这个错误 ModuleNotFoundError:没有名为“ Tkinter”的模块 要么 ModuleNotFoundError:没有名为“ tkinter”的模块 可能是什么原因,我们如何解决呢? 问题答案: 您可能需要使用以下一种(或类似的方式)安装它: 您也可以针对python 3.7提及

  • 我发现了许多对次要Tkinter依赖项的引用,比如导入Tkinter itslef的matplotlib,但我没有发现类似这样的直接依赖项的任何细节。 你有什么办法让这个工作吗?

  • 问题内容: 运行此代码时,我尝试通过Windows 10上的Pycharm IDE使用matplotlib软件包: 我收到以下错误: 我知道在python 2.x中它叫做Tkinter,但这不是问题-我刚安装了一个全新的python 3.5.1。 编辑:此外,我还尝试导入’tkinter’和’Tkinter’-这些都不起作用(都返回了我提到的错误消息)。 问题答案: 然后, 编辑 : 对于Wind

  • 我尝试在Windows10上通过Pycharm IDE使用matplotlib包。当我运行以下代码时: 出现以下错误: 我知道在Python2.x中它被称为Tkinter,但这不是问题所在--我刚刚安装了一个全新的Python3.5.1。 编辑:此外,我还尝试导入'tkinter'和'tkinter'-这两个都不起作用(都返回了我提到的错误消息)。

  • 我正在尝试编写一个 脚本,为此我需要 。当尝试 时,出现以下错误: null 不能解决问题。我尝试使用以下命令将路径添加到 : 这两个命令都没有解决该错误。

  • 我以前在CentOS上,但不得不换成Ubuntu。 我最近安装了Python 3.5,并遵循以下说明:https://passingcuriosity.com/2015/installing-python-from-source/ 我试图写一个简单的图形用户界面,但它说模块Tkinter没有加载。这里是我的终端位: adminJerry@admin:~/桌面 /usr/local/bin/pyth