Jupyter Notebook 导入错误,%matplotlib qt

Jupyter Notebook ImportError, %matplotlib qt

我正在使用

%matplotlib inline

在笔记本中显示图表。我想为几个单元格禁用它。所以,我尝试

%matplotlib qt

这会输出以下错误:

ImportError: Matplotlib qt-based backends require an external PyQt4, PyQt5,
or PySide package to be installed, but it was not found.

我不确定如何解决这个问题,因为一切都是最新的。

  1. 如何解决以上问题?

  2. 是否有另一种方法可以在不重新启动整个内核的情况下在某个单元格中禁用 %matplotlib inline

可能 能够使用 plt.switch_backend,尽管如文档所述,这是一项实验性功能。以下对我有用,使用 matplotlib 1.5 和 IPython 4.0.1:

In [1]: from matplotlib import pyplot as plt

In [2]: import numpy as np

# plot appears inline (default)
In [3]:plt.plot(np.random.randn(10))
Out[3]:[<matplotlib.lines.Line2D at 0x7fac4408e390>]

In [4]: plt.switch_backend('QtAgg4')

# plot appears inside a separate Qt4 window
In [5]:plt.plot(np.random.randn(10))
Out[5]:[<matplotlib.lines.Line2D at 0x7fac3b408a90>]

您可能需要根据您安装的 PyQt 版本更改 'QtAgg4' - 这可能是您在问题中提到的错误的原因。另一个应该在 Mac 上工作的交互式后端是 'CocoaAgg'。如果图像非常大,您还可以使用 'Agg' 后端来完全抑制绘图,而是将生成的图形直接保存到磁盘。

如果您没有安装特定的后端,请使用 "agg":

    import matplotlib
    matplotlib.use('agg')
    import matplotlib.pyplot as plt

参考:https://github.com/matplotlib/matplotlib/issues/9017