我第一次尝试使用Jupyter控制台,但无法使%matplotlib inline
魔法发挥作用。以下是示例会话的屏幕截图:
在我运行第6行后,该图显示在一个单独的窗口中,第7行没有做任何事情。
当我运行%matplotlib --list
时,inline
作为选项之一:
Available matplotlib backends: ['osx', 'qt4', 'qt5', 'gtk3', 'notebook', 'wx', 'qt',
'nbagg', 'agg', 'gtk', 'tk', 'ipympl', 'inline']
当我尝试使用另一个后端时,请说qt5
,它会显示错误消息,因为我没有安装任何Qt。
ImportError: Matplotlib qt-based backends require an external PyQt4, PyQt5, or PySide
package to be installed, but it was not found.
运行%matplotlib??
读取:
If you are using the inline matplotlib backend in the IPython Notebook
you can set which figure formats are enabled using the following::
In [1]: from IPython.display import set_matplotlib_formats
In [2]: set_matplotlib_formats('pdf', 'svg')
The default for inline figures sets `bbox_inches` to 'tight'. This can
cause discrepancies between the displayed image and the identical
image created using `savefig`. This behavior can be disabled using the
`%config` magic::
In [3]: %config InlineBackend.print_figure_kwargs = {'bbox_inches':None}
但我不知道是否可以通过调整来解决我的问题。
当我尝试神奇的IPython控制台时,它说inline
是Unknown Backend
。
UnknownBackend: No event loop integration for u'inline'. Supported event loops are: qt,
qt4, qt5, gtk, gtk2, gtk3, tk, wx, pyglet, glut, osx
我在谷歌搜索后也发现了this issue on github,但我甚至不知道它是否与我的情况有关(他们的大多数谈话都没有意义我哈哈)。
最后,我不确定这个问题是否完全相关,但在这里,以防万一:当我尝试通过!vim
命令在Jupyter中打开Vim时,它会出现故障,即使没有关闭终端altogther,我甚至可以退出Jupyter。然而,当在IPython控制台中调用时,Vim工作得非常好。
我正在使用matplotlib 2.0.0
。
如果有人能帮助我解决这个问题,那就太棒了!谢谢!
答案 0 :(得分:10)
您正在运行一个完全基于文本且无法显示图像的控制台。因此,虽然inline
可用,但它不会生成内联输出。
我不确定为什么它不会抛出错误,但它在我的情况下会这样做:
您可以在GUI控制台中使用%matplotlib inline
,例如Jupyter QTConsole
或浏览器中的jupyter笔记本
答案 1 :(得分:0)
%matplotlib
(不带inline
)对我有用(我使用的是osx和IPython 7.0.1)
答案 2 :(得分:-1)
如果您正在运行旧版本的ipython,请尝试使用%pylab inline
。见notes in this tutorial