我正在使用Amazon Linux ec2机器。当我尝试在virtualenv中运行Python脚本时,我收到以下消息:
File "/home/sp/Envs/crispor/local/lib/python2.7/dist-packages/matplotlib/externals/six.py", line 80, in _import_module
__import__(name)
ImportError: No module named Tkinter
据我所知,Tkinter应该是Python安装的一部分。但不知何故,事实并非如此。这些不起作用 -
sudo yum install python-tk
sudo yum install tkinter
如何安装Tkinter?或者我应该这样做,它应该是Python安装的一部分吗?
答案 0 :(得分:32)
您不希望(也可能不能)在该服务器中安装tkinter。将matplotlib配置为使用非交互式后端。
backend : agg
UPDATE 对于matplotlib> = 3.0.0,根据documentation“[h] eadless linux服务器(由DISPLAY env标识未定义),这不是必需的不会选择GUI后端“。
答案 1 :(得分:13)
添加到@Goyo。您也可以在代码中将模式切换为agg。
import matplotlib
matplotlib.use('agg',warn=False, force=True)
from matplotlib import pyplot as plt
print "Switched to:",matplotlib.get_backend()
答案 2 :(得分:0)
你能提供python版本信息吗?
1-尝试安装:
yum install python-tools
这个包使用tkinder所以可以提供帮助。
2-如果你使用python3:
sudo yum install python3-tkinter
3-下载并安装包: http://rpm.pbone.net/index.php3?stat=3&search=python27-tkinter&srodzaj=3&dist[]=79