IPython:在pylab模式下在IPython内运行外部脚本时打印图形
我有一个Python脚本IPython:在pylab模式下在IPython内运行外部脚本时打印图形,ipython,Ipython,我有一个Python脚本myscript.py,如下所示: $ cat myscript.py import matplotlib.pyplot as plt plt.plot([1, 2, 3], [1, 3, 2]) 在pylab模式下运行IPython时: 执行以下命令(脚本中的第2行)将在新窗口中弹出图形: In []: plt.plot([1, 2, 3], [1, 3, 2]) 另一方面,当运行myscript.py时,图像将不会显示: In []: %run myscript.
myscript.py
,如下所示:
$ cat myscript.py
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [1, 3, 2])
在pylab模式下运行IPython时:
执行以下命令(脚本中的第2行)将在新窗口中弹出图形:
In []: plt.plot([1, 2, 3], [1, 3, 2])
另一方面,当运行myscript.py
时,图像将不会显示:
In []: %run myscript.py
是否有任何方法可以更改此行为并强制IPython显示在脚本中生成的图像?当使用
%run
命令在IPython的控制台中执行外部脚本时,这些脚本将在非交互模式下执行。所以,
plt.show()
必须添加到脚本中才能显示生成的图形
plt.show()