matplotlib.pyplot 在 python 2.7 上给出错误“ImportError:没有名为 Tkinter 的模块”

Posted

技术标签:

【中文标题】matplotlib.pyplot 在 python 2.7 上给出错误“ImportError:没有名为 Tkinter 的模块”【英文标题】:matplotlib.pyplot giving error 'ImportError: No module named Tkinter' on python 2.7 【发布时间】:2020-03-18 11:42:53 【问题描述】:

我正在使用远程机器进行计算和数据分析。我在这台机器上没有 sudo 访问权限,出于数据分析的目的,我想使用 vtk 等 python 库,因为这台机器上没有安装 pip,我设置了一个“虚拟环境”并安装 VTK那里, 我使用了这里解释的方法(https://***.com/a/13958308/10755782)。然后我可以使用pip在虚拟环境中安装vtk

但现在的问题是我无法导入matplotlib.pyplot,它给了我错误

ImportError: No module named Tkinter

这个错误很奇怪,因为matplotlib.pyplot 在我的虚拟环境之外的这个特定系统中工作。有一些解决方法可以在不使用tkinter 的情况下开始使用matplotlib.pyplot,例如(https://***.com/a/49988926/10755782),但这对我来说没有帮助,因为这台机器是远程访问的,我需要'tkinter'来查看图表我的屏幕。

我尝试在我的虚拟环境中安装“tkinter”,但我不能(因为我们无法使用 pip 安装“tkinter”而且我没有 sudo 访问权限)。

由于我无法在任何地方找到任何立即解决此问题的方法,因此我尝试自己解决此问题并执行了以下操作,

在我的虚拟环境中,matplotlib 的版本是 2.2.4,外部是 1.2.0(工作正常)。所以我将虚拟环境中的 matplotlib 版本降级为 1.2.0 pip install 'matplotlib==1.2.0' --force-reinstall 现在我在虚拟环境内外都有相同版本的 matplotlib。但是现在,当我尝试import matplotlilb.pyplot as plt 时,我得到了错误

ImportError: /b/home/ipcms/rcheenik/Python_virt-env/python2.7/my_new_env/lib/python2.7/site-
packages/matplotlib/_cntr.so: undefined symbol: _intel_fast_memset

有没有办法解决这个 ^^ 错误?以下任何一项都可以帮助我。 没有 OR 有没有办法在没有 sudo 的情况下安装 tkinter ?还是在“虚拟环境”中?

或者是否有任何替代 matplotlib.pyplot 的替代品,它可以在没有“tkinter”的情况下工作并且仍然可以远程显示图形? (不利,因为我必须重写整个代码)

提前感谢您的帮助。

【问题讨论】:

【参考方案1】:

不过,我找到了一个类似问题的答案,我相信这会解决您的问题。 https://***.com/a/49988926/8775307 它在没有 tkinter 的情况下导入 matplotlib.pyplot。我不知道是否真的包含所有功能,所以你必须测试并告诉我们:)。

您可以随时写信给管理员并请求 Tkinter - 这是一个广泛使用且有用的软件包,因此他们可能愿意包含它。

【讨论】:

谢谢,但是系统中已经提到了这个解决方案。这对我不起作用,因为没有“tkinter”,我无法在远程屏幕上查看图表。

以上是关于matplotlib.pyplot 在 python 2.7 上给出错误“ImportError:没有名为 Tkinter 的模块”的主要内容,如果未能解决你的问题,请参考以下文章

无法导入 matplotlib.pyplot

服务器上使用matplotlib.pyplot绘图

没有名为“matplotlib.pyplot”的模块; “matplotlib”不是一个包

python的绘图工具matplotlib.pyplot

matplotlib.pyplot 导引

matplotlib.pyplot.gca().set_xlim(初始值,末值) 与 matplotlib.pyplot.xticks()的区别