尝试在Linux上使用Matplotlib,但我不断收到此错误:
ImportError: Cannot load backend 'TkAgg' which requires the 'tk' interactive framework, as 'headless' is currently running
我在OS:Linux 18.04 LTS上使用虚拟环境。 Python版本:3.6
我尝试了许多其他帖子建议的解决方案:
sudo apt-get install tk-dev libpng-dev libffi-dev dvipng texlive-latex-base
pip uninstall matplotlib
pip --no-cache-dir install matplotlib
我尝试摆弄使用matplotlib的python脚本:
#TOP OF FILE
import matplotlib
matplotlib.use('Agg') # or 'TkAgg', or removing the line altogether
import matplotlib.pyplot as plt
...
运行python来查看正在使用的后端:
import matplotlib
matplotlib.get_backend() # -> 'agg'
有什么想法吗?谢谢
答案 0 :(得分:1)
我在macOS上使用iPython时遇到了类似的问题
matplotlib.use('TkAgg')
ImportError:无法加载需要'tk'的后端'TkAgg' 交互式框架,因为“ macosx”当前正在运行
我能够使用显示
matplotlib.use('WebAgg') # shows in the browser
或
matplotlib.use('MacOSX') # shows on the desktop
要获取我输入的所有可用后端的列表:
matplotlib.use('?')
...
ValueError:无法识别的后端字符串'?':有效的字符串是 ['GTK3Agg','GTK3Cairo','MacOSX','nbAgg','Qt4Agg','Qt4Cairo', 'Qt5Agg','Qt5Cairo','TkAgg','TkCairo','WebAgg','WX','WXAgg', 'WXCairo','agg','cairo','pdf','pgf','ps','svg','template']