我正在使用绘图命令I
的{{1}}内联模式中的IPython笔记本绘制NumPy值数组%matplotlib
。
结果输出为:
plt.plot(I,'o')
然后我的情节显示在这些输出线下方。
有没有办法只显示情节并隐藏输出中的<matplotlib.figure.Figure at 0x119e6ead0>
Out[159]:
[<matplotlib.lines.Line2D at 0x11ac57090>,
<matplotlib.lines.Line2D at 0x11ac57310>,
<matplotlib.lines.Line2D at 0x11ac57510>,
<matplotlib.lines.Line2D at 0x11ac57690>,
<matplotlib.lines.Line2D at 0x11ac57810>,
<matplotlib.lines.Line2D at 0x11ac57990>,
<matplotlib.lines.Line2D at 0x11ac57b10>,
....
....
]
?
答案 0 :(得分:77)
您可以使用分号;
来结束该行。这会在生成绘图时抑制不需要的输出:
plt.plot(I,'o');
通常,使用分号会阻止IPython从代码块的该行打印任何输出值。例如,执行包含代码1+1;
的单元格不会输出2
。
另一种方法是将变量绑定到图:
_ = plt.plot(a)
这样,IPython只显示图表,名称_
绑定到不需要的输出。
答案 1 :(得分:12)
另一种方法是在绘图代码的末尾写plt.show()
。如果您在单个子图上生成许多子图和/或绘制多个图,则输入的符号将更少。
答案 2 :(得分:0)
老问题...
好吧,我更喜欢在最后一行使用 pass
。
不像 ;
那样小,但是,恕我直言,更清晰但更短。