ipython pylab数字不是内联的

Dan*_*ple 8 matplotlib ipython

我在Mac(OSX Lion)上安装了iPython + SciPy Superpack.

如果我使用matplotlib.pyplot进行绘图,它将弹出一个带有图形的窗口,然后关闭它以使ipython内核继续.

from matplotlib import pyplot as plt
plt.plot([1, 2, 3], [3, 6, 9])
plt.show()
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试内联(以--pylab inline或开头--pylab=inline)并导入pylab,而不是笔记本内部的图(我期望的),我得到一个外部窗口,它永远不会呈现任何东西.

仍在外部窗口中:

import pylab
pylab.plot([1, 2, 3], [3, 6, 9])
pylab.show()
Run Code Online (Sandbox Code Playgroud)

因为我已经启动笔记本ipython notebook --pylab=inline应该已经是这样,但如果我%pylab inline在一个单元格中使用并运行它,我得到帮助,上面相同的代码创建一个空白窗口,并挂起内核 - 我只能强制杀死窗户.这怎么办?

Dan*_*ple 4

好吧 - 问题是原来的 ipython 笔记本进程仍在运行(我没有杀死它),而带有内联标志的新进程正在不同的端口上运行。

如果您遇到此问题 - 首先保存所有笔记本,然后检查是否有其他进程正在运行并终止任何不应运行的进程。

如果你想避免这种混乱,你可以NotebookApp.port_retries=0在你的配置中进行设置,在这种情况下,稍后的笔记本调用将放弃,而不是侦听新端口。(感谢minrk,在评论中)

  • 如果您想避免这种混乱,可以在配置中设置“NotebookApp.port_retries=0”,在这种情况下,稍后的笔记本调用将放弃,而不是侦听新端口。 (3认同)