bug的产生
是在使用python的matplotlib库的时候发现无法绘制和老师一样的图
原因
一开始我还以为是我的matoltlib和我的python版本不匹配后面发现真正原因其实是matplotlib 的 backend的默认渲染器是agg,agg是一个没有图形显示界面的终端,如果要图像正常显示,则需要切换为图形界面显示的终端TkAgg
解决方法
修改 backend 配置:matplotlib.use(‘TkAgg’)文章来源:https://www.toymoban.com/news/detail-735322.html
原代码和修改后代码对比
原代码:
`import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0.0001,3,100)
y=x**x
plt.plot(x,y,'r-',linewidth=3)
plt.show()`
错误提示:
AttributeError: module 'backend_interagg' has no attribute 'FigureCanvas'. Did you mean: 'FigureCanvasAgg'?
修改后代码:
import numpy as np
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
x=np.linspace(0.0001,3,100)
y=x**x
plt.plot(x,y,'r-',linewidth=3)
plt.show()
运行结果
为0.0001到3 之间一百个点的x的x乘方的变化图
文章来源地址https://www.toymoban.com/news/detail-735322.html
到了这里,关于AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘的解决办法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!