首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyCharm Matplotlib "UserWarning: Matplotlib目前正在使用agg,这是一个非GUI后端,因此不能显示图. plt.show()“

问PyCharm Matplotlib "UserWarning: Matplotlib目前正在使用agg,这是一个非GUI后端,因此不能显示图. plt.show()“
EN

Stack Overflow用户
提问于 2020-03-16 23:51:21
回答 2查看 6K关注 0票数 1

我对matplotlib.pyplot.show()函数有问题。我在Linux上使用PyCharm,我有一个VirtualEnv。当我在构建的PyCharm终端(使用venv)中执行文件PyCharm时,如下所示

$ python x.py

所有操作都很好,函数plt.show()很好地呈现并显示了绘图图。我添加了print(matplotlib.get_backend())来查看默认使用哪个后端,结果是GTK3Agg。

当我使用选项Run而不是终端时,问题就开始了。然后我会收到一条错误消息

UserWarning: Matplotlib目前正在使用agg,它是一个非GUI后端,因此无法显示图形。plt.show()

无论如何,我在网上搜索,根据这和其他链接,我不得不在. .config/matplotlib/matplotlibrc中添加backend: GTK3Agg。该文件不存在,所以我自己创建了它。现在,当我再次运行时,会收到以下错误消息:

从e ImportError(‘后端Gtk3Agg需要cairo')引发ImportError:后端Gtk3Agg需要cairo

我怎么才能解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-17 02:40:18

我设法解决了我的问题,多亏@ImportanceOfBeingErnest指出我有两个环境,一个环境安装了GTK和依赖项,另一个环境是由PyCharm使用的,其中一个环境缺少这些环境。

我不得不去Settings > Project interpreter安装matplotlib、pycairo和PyGObject。

还需要安装pycairo和PyGObject的包,我必须从终端安装这些软件包:

代码语言:javascript
复制
sudo dnf install cairo-devel (or libcairo2 in ubuntu)
sudo dnf install python3-devel
sudo dnf install gobject-introspection-devel
sudo dnf install cairo-gobject-devel

现在,我可以使用GTK3Agg作为后端。

票数 1
EN

Stack Overflow用户

发布于 2022-09-02 08:25:56

在我的例子中(LinuxMint20.3),问题来自于从软件管理器安装PyCharm。然后,PyCharm安装了平板电脑。

代码语言:javascript
复制
flatpak list

如果是这样的话,应该给你一个主意。

这个版本有问题。看看:https://github.com/flathub/com.jetbrains.PyCharm-Community/issues/15

我可以通过使用PyCharm安装管理单元来修复它。https://thesecmaster.com/3-ways-to-install-pycharm-on-linux-mint-and-ubuntu/

然后:sudo apt-get install python3.8-tk和PyCharm中,我不得不添加

“未来”和“物质库”

有关它的更多信息:当您第一次(从软件管理器安装)运行PyCharm时,您收到:

https://www.flathub.org

警告:您正在运行一个非官方的Flatpak版本的PyCharm!

请打开以下问题:https://github.com/flathub/com.jetbrains.PyCharm-Community/issues

此版本在容器中运行,因此无法访问主机系统上的SDK!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60714627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档