gpt4 book ai didi

python - 如何在 Python/Jupyter 笔记本中省略 matplotlib 打印输出?

转载 作者:行者123 更新时间:2023-12-04 11:00:49 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to hide <matplotlib.lines.Line2D> in IPython notebook

(3 个回答)


4年前关闭。
社区在 8 个月前审查了是否重新打开此问题并将其关闭:

原始关闭原因未解决





当我在 IPython/Jupyter 笔记本中制作一个简单的绘图时,会有打印输出,大概是从 matplotlib 标准输出生成的。例如,如果我运行下面的简单脚本,笔记本将打印如下一行:<matplotlib.text.Text at 0x115ae9850> .

import random
import pandas as pd
%matplotlib inline

A = [random.gauss(10, 5) for i in range(20) ]
df = pd.DataFrame( { 'A': A} )
axis = df.A.hist()
axis.set_title('Histogram', size=20)

如下图所示,即使我没有 print 也会出现输出任何事物。如何删除或阻止该行?

Jupyter notebook output

最佳答案

由于 Jupyter 会自动打印单元格中最后一个对象的表示,因此会出现此输出。在这种情况下,输入单元#1 的最后一行确实有一个对象。即调用 .set_title(...) 的返回值,它是 .Text 类型的实例.这个实例被返回到笔记本的全局命名空间并因此被打印出来。
为避免这种行为,您可以按照评论中的建议,通过在行尾附加分号来抑制输出,从 notebook v6.3.0 开始有效。 , jupyter_core v4.7.1 , 和 jupyterlab v3.0.14 :

axis.set_title('Histogram', size=20);
另一种方法是分配 Text变量而不是将其返回到笔记本。因此,
my_text = axis.set_title('Histogram', size=20)
也解决了这个问题。
最后放 plt.show()最后的。
...
axis.set_title('Histogram', size=20)
plt.show()

关于python - 如何在 Python/Jupyter 笔记本中省略 matplotlib 打印输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45516770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com