如何在 IPython 笔记本中隐藏 <matplotlib.lines.Line2D>
Posted
技术标签:
【中文标题】如何在 IPython 笔记本中隐藏 <matplotlib.lines.Line2D>【英文标题】:How to hide <matplotlib.lines.Line2D> in IPython notebook 【发布时间】:2014-11-05 13:22:04 【问题描述】:我正在绘制一个 NumPy 值数组 I
,在 %matplotlib
内联模式下使用 IPython 笔记本和绘图命令 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>,
....
....
]
然后我的情节显示在这些输出线的下方。
有没有办法只显示绘图并从输出中隐藏<matplotlib.lines.Line2D at ...>
?
【问题讨论】:
Disable the output of matplotlib pyplot的可能重复 【参考方案1】:您可以使用分号;
结束该行。这会在生成绘图时抑制不需要的输出:
plt.plot(I,'o');
一般来说,使用分号会阻止 IPython 从代码块的该行打印任何输出值。例如,执行包含代码1+1;
的单元格将不会输出2
。
另一种方法是将变量绑定到绘图:
_ = plt.plot(a)
这样,IPython 只向您显示绘图,并且名称 _
绑定到不需要的输出。
【讨论】:
它们也可以存储到一个变量中,我认为它不会打印到工作簿中。 @will - 谢谢,已编辑以包含您的建议。【参考方案2】:另一种方法是在绘图代码的末尾写上plt.show()
。如果您要生成许多子图和/或在单个子图上绘制许多图,则键入的符号会更少。
【讨论】:
【参考方案3】:老问题...
好吧,我更喜欢在最后一行使用pass
。
不像;
那么小,但是,恕我直言,更清晰,更短。
【讨论】:
以上是关于如何在 IPython 笔记本中隐藏 <matplotlib.lines.Line2D>的主要内容,如果未能解决你的问题,请参考以下文章
如何在 IPython 笔记本中打开交互式 matplotlib 窗口?
如何在 jupyter/ipython 笔记本中启用 MathJax Upgreek?
如何在 IPython 笔记本的 pandas DataFrame 列中左对齐文本