删除这行代码无法绘图并报错
Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
查阅资料:要添加以下代码
matplotlib.use('TkAgg')
添加后还是报同样错误,但出现画图框,之后程序出现卡死现象,只能重启
再次查阅资料,发现需要将%matplotlib inline
替换
from IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
最终代码如下所示:
import matplotlib
import matplotlib.pyplot as plt
from IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
使用下面代码时报错import matplotlibimport matplotlib.pyplot as plt%matplotlib inline删除这行代码无法绘图并报错Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.查阅资料:要添加以下代码matplotlib.use('TkAgg')添加后还是报同样错误,但出现画图框,之后程序出现卡死现象,只能重启
补充知识:jupyter notebook matplotlib绘制动态图并显示在notebook中
有些时候matplotlib 的绘图没法显示在notebook中,或者显示不了。这与backend有关。
首先启动你的notebook,输入
%pylab
查看你的matplotlib后端,我的输出为:
Qt5Agg
get_ipython().magic(‘matplotlib inline‘) NameError: name ‘get_ipython‘ is not defined
Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.原链接-解决方法:翻译版本:
csdn上很多解决方法,但是都不管用,有让你加两行代码的,有让改配置文件的,基本都是国外网站的翻版,都不完全对。
一些英文网站还是写得全面,下文链接完美解决方法
原链接-解决方法:
“UserWarning: Matplotlib is currently using agg, which is a n
UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
1. 本文适用的场景
项目场景:平时正常导入matplotlib库没问题,运行代码时突然出现这个问题。
而且导入库的顺序和以往不一样。
用户警告:matplotlib正在使用agg,agg是一个没有GUI画图的后端,因此调用 matplotlib.pyplot()不能
2.问题分析
报错类型:Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
平台:Windows-pycharm-anaconda虚拟环境
解决方案:
加入以下语句:
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.use(‘TkAgg’)#在所有包最后加入该语句即可
但是我加入以后还是无法显示图片,原因在于mpl.us
solution:
魔法行仅由IPython命令行支持。它们不能简单地在脚本中使用,因为Python语法中有些地方不正确。
如果希望从脚本执行此操作,则必须访问IPython API,然后调用run_line_magic函数。
Line magics are only supported by the IPython command line. They