FigureCanvas是什么
matplotlib 使用不同的后端(backends)来渲染图形,每个后端都有自己的 FigureCanvas 实现。这意味着 matplotlib 在尝试获取用于绘制图形的画布类时出现了问题。
什么引发的错误
matplotlib 可以使用多种后端来显示图形,如 TkAgg、Qt5Agg、Agg 等。
Agg:Anti - Grain Geometry,中文:反走样几何。意为高质量地渲染几何图形。
可能是当前环境的 matplotlib 后端配置不正确,导致它试图使用一个不完整或错误的后端(这里是 backend_interagg),所以显示后端缺少必要的 FigureCanvas 属性。
具体来说可能是由于环境变量设置、matplotlib 配置文件问题,或者是安装过程中出现的异常导致后端配置错误。
AGG后端
Agg 后端是非交互式的。Agg 后端主要用于在服务器端生成图像文件(如 PNG、PDF 等),而不具备直接在窗口中显示图形的能力。
TkAgg和Qt5Agg
TkAgg 通常随 Python 标准库安装,而 Qt5Agg 需要额外安装,例如使用 pip install PyQt5
如何解决
自己指明使用什么后端来显示图形
import matplotlib
matplotlib.use(‘TkAgg’)
import matplotlib.pyplot as plt
import numpy as np