我正在尝试在装有 Python 2.7.2 和 IPython 1.1.0 的 MacOS X 上使用 IPython 笔记本。
我无法让 matplotlib 图形以内联方式显示。
import matplotlib import numpy as np import matplotlib.pyplot as plt %matplotlib inline
我也尝试过%pylab inlineipython 命令行参数,--pylab=inline但这没有什么区别。
%pylab inline
--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.get_backend()
'module://IPython.kernel.zmq.pylab.backend_inline'
在 IPython 笔记本中,图形显示问题可能与配置有关。你遇到的问题可能是由于以下几个原因造成的:
IPython 和 Matplotlib 的版本兼容性:你使用的是 IPython 1.1.0 和 Python 2.7.2,这些版本可能存在一些不兼容的问题。建议升级 IPython 和 Matplotlib 到更高的版本,这可能会解决图形显示的问题。
Matplotlib 配置:确保你的 Matplotlib 配置正确。在 IPython 笔记本中,%matplotlib inline 魔法命令应该能让图形以内联方式显示。如果这没有效果,可以尝试在代码中手动设置后端:
%matplotlib inline
python import matplotlib matplotlib.use('nbagg')
或者尝试其他后端,例如:
python matplotlib.use('TkAgg')
重启 IPython 笔记本:有时,改变后端或配置后,需要重启 IPython 笔记本服务器才能使更改生效。你可以尝试重启 IPython 笔记本服务,看看问题是否得到解决。
检查 IPython 配置文件:确保你的 IPython 配置文件中没有错误的设置。可以尝试重置 IPython 配置:
sh ipython profile create
pip
conda
sh pip install --upgrade ipython matplotlib
如果你使用的是 conda,可以使用:
sh conda update ipython matplotlib
通过以上步骤,你应该能够解决内联图形不显示的问题。