matplotlib non-GUI backend 无法显示图片解决办法

matplotlib non-GUI backend 无法显示图片解决办法

  • 问题分析
  • 新的问题

问题分析

根据提示,表明现在的显示方式,是非GUI图形界面显示的。所以在调用pylab.show()的时候会有这样的一个提示。那么,既然有非GUI的显示方式,就应该有GUI的显示方式。打开matlab的源码搜索agg如下所示:

@cbook._rename_parameter("3.1", "arg", "backend")
def use(backend, warn=False, force=True):
    """
    Select the backend used for rendering and GUI integration.

    Parameters
    ----------
    backend : str
        The backend to switch to.  This can either be one of the standard
        backend names, which are case-insensitive:

        - interactive backends:
          GTK3Agg, GTK3Cairo, MacOSX, nbAgg,
          Qt4Agg, Qt4Cairo, Qt5Agg, Qt5Cairo,
          TkAgg, TkCairo, WebAgg, WX, WXAgg, WXCairo

        - non-interactive backends:
          agg, cairo, pdf, pgf, ps, svg, template

        or a string of the form: ``module://my.module.name``.

通过上面的代码注释,就可以明了。分为可以交互的(interactive)的backends和非交互的backends.那我们只需要将默认的不可交互的backends改为可以交互的backends即可

import matplotlib 
matplotlib.use('TKAgg')

新的问题

按照,分析修改上面的内容即可,但是。在运行的时候出现了错误。无法导入tkiner。然后根据查找资料,获知在python3记性界面开发的时候,需要安装python3-tk 于是乎打开terminal:

sudo apt-get install python3-tk

继续运行的过程中,还会缺少一些组件。使用pip3 install 安装即可。运行程序后,得到了想要的结果。

你可能感兴趣的:(python)