我试图在 MacOS X 上使用带有 Python 2.7.2 和 IPython 1.1.0 的 IPython Notebook。
我无法获得 matplotlib 图形来内联显示。
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
我也尝试了%pylab inline
和 ipython 命令行参数--pylab=inline
但这没什么区别。
x = np.linspace(0, 3*np.pi, 500)
plt.plot(x, np.sin(x**2))
plt.title('A simple chirp')
plt.show()
我得到的不是内联图形,而是:
<matplotlib.figure.Figure at 0x110b9c450>
matplotlib.get_backend()
表明我有'module://IPython.kernel.zmq.pylab.backend_inline'
后端。
我在笔记本的第一个单元格中使用了%matplotlib inline
我认为您应该尝试:
%matplotlib inline
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
通过在配置文件中设置以下配置选项,默认情况下,您也始终可以始终默认以内联模式启动所有 IPython 内核:
c.IPKernelApp.matplotlib=<CaselessStrEnum>
Default: None
Choices: ['auto', 'gtk', 'gtk3', 'inline', 'nbagg', 'notebook', 'osx', 'qt', 'qt4', 'qt5', 'tk', 'wx']
Configure matplotlib for interactive use with the default matplotlib backend.
如果您的 matplotlib 版本高于 1.4,则也可以使用
IPython 3.x 及更高版本
%matplotlib notebook
import matplotlib.pyplot as plt
较旧的版本
%matplotlib nbagg
import matplotlib.pyplot as plt
两者都将激活nbagg 后端,从而启用交互性。