matplotlib不导入PyQt4,PyQt5或PySide

时间:2017-10-28 19:50:03

标签: python qt matplotlib canopy

我正在使用Canopy 2.1.3发行版(在Ubuntu 16.04上),您可能知道它包含matplotlib包。只需在Canopy的shell import matplotlib.pyplot as plt中运行就可以了

  

ImportError:基于matplotlib qt的后端需要外部PyQt4,PyQt5,   或者要安装PySide包,但没找到。

我已经使用Synaptic安装了所有这三个软件包,但问题仍然存在。 这可能与环境变量有关吗?或者,是否因为Canopy的Python 3.5和Ubuntu的Python 2.7存在冲突?

编辑: 我最终通过从Canopy的软件包管理器安装它来使用PyQt。

2 个答案:

答案 0 :(得分:4)

matplotlib.pyplot的默认后端可能设置为qt 我对冠层的经验很少,但应该可以将默认值更改为另一个后端;也许其他人可以告诉你如何,或者你可以自己找到它。

与此同时,您可以尝试将其添加到所有其他matplotlib导入之上:

import matplotlib
matplotlib.use('TkAgg')

答案 1 :(得分:1)

来自用户指南:

  

Known Issue: In Canopy running Python 3, GUI backend must be explicitly set

     

如果你要求matplotlib显示一个图,或者运行创建GUI窗口的Python代码,默认情况下你会得到一个错误回溯,结尾为:ImportError:没有名为' PyQt4'      

解决方案是在Canopy包管理器中安装PyQt(GPL许可),或使用Canopy Preference菜单的Python选项卡指定用于创建GUI的TK PyLab后端。有关详细信息,请参阅“Python 3 in Canopy 2 - ‘No module named PyQt4’ error”