无法在Python中从Matplotlib导入FigureCanvasWxAgg
我在用64位的Python,所有东西都安装好了,但在导入FigureCanvasWxAgg的时候遇到了问题,系统提示找不到这个模块。我能导入到matplotlib.backends.backend_wxagg,但那里面没有FigureCanvasWxAgg可以导入。
我也试过用
from matplotlib.backends.backend_wxagg import *
,但也不行。
补充一下:问题解决了。我查看了一下我的backend_wxagg.py文件,发现它和网上列出的版本完全不同,这里的版本是0.99.1.1。我把那个版本的文件复制到了我1.0.1的文件夹里。(我可能应该直接卸载1.0.1的matplotlib,换用旧版本。)不过现在示例可以正常运行了,我很高兴。
1 个回答
你在用什么操作系统?你是怎么安装matplotlib的?
你的解决方案很可能会导致问题……你需要像往常一样构建并安装wx后端。我不太确定wx后端的情况,但其他一些后端是C语言扩展,而不仅仅是简单的Python文件。
wx后端默认是不会被构建的,所以通常它会作为一个单独的包来提供。(比如在Suse系统中是python-matplotlib-wx
)你需要通过你的包管理器来安装wx后端,就像平常那样。
如果你使用的是没有包管理器的操作系统(比如Windows或Mac),那么安装程序是否包含wx后端就要看是谁制作的以及是怎么配置的。我对非Linux或BSD的操作系统一无所知,所以这方面你得自己解决。可以去你下载matplotlib的地方看看,看看他们是否有单独的wx后端安装程序。
如果你是从源代码构建的,你需要启用wx后端并重新构建。为此,你需要编辑构建目录中的site.cfg
文件。如果你的构建目录里没有site.cfg
文件,可能需要把默认的那个文件(site.cfg.default
,或者类似的名字)重命名为site.cfg
。
希望这些信息对你有帮助!