Python 为什么Jupyter要两次显示图表?

Python 为什么Jupyter要两次显示图表?,python,pandas,jupyter-notebook,Python,Pandas,Jupyter Notebook,我从Jupiter开始分析一些销售数据。这是可行的,但每次我绘制图表时,图表都会显示两次。我笔记本中的前两个图表是在一个类中绘制的,对于这些图表,它不会发生(注意,Model这里指的是产品的模型,而不是预测模型): 一切看起来都很好。然后我执行下面三行: my_model.weekly_sales.autocorr() from stats models.graphics.tsaplots import plot_acf plot_acf(my_model.weekly_sales) 每个

我从Jupiter开始分析一些销售数据。这是可行的,但每次我绘制图表时,图表都会显示两次。我笔记本中的前两个图表是在一个类中绘制的,对于这些图表,它不会发生(注意,
Model
这里指的是产品的模型,而不是预测模型):

一切看起来都很好。然后我执行下面三行:

my_model.weekly_sales.autocorr()
from stats models.graphics.tsaplots import plot_acf
plot_acf(my_model.weekly_sales)

每个后续绘图显示两次,包括
ARMA
模型的
fit
plot\u pacf

没什么大不了的。我得到了我需要的信息,但有点烦人。为什么要这样做


更新:在分析过程中,我在与ACF和PACF输出相同的Jupyter单元中打印了一个
数据帧
,它只打印了一次帧并显示了两个图表。我返回到具有重复图表输出的其他单元格,在每个单元格的末尾添加了一个
print()
,现在每个单元格只显示一次。

这个问题已经存在了很长一段时间。看见 到目前为止,“这似乎是由于PlotACF函数绘制图形并返回结果导致IPython笔记本再次绘制结果。”

对于这个问题,有几种方法可以克服双重打印

1) 如您所述,在acf\U绘图后添加
print()

2) 分配输出,例如,
output\u plt=plot\u acf(我的车型每周销售)

3) 在行
plot\u acf(my\u model.weekly\u sales)后添加分号

4) 如果仍导入matplotlib,则在同一单元格中执行
plt.show()


5) 更改
%matplotlib
属性。不建议这样做,因为它会影响其他绘图

您可以将函数的名称更改为其他名称并重试吗?
my_model.weekly_sales.autocorr()
from stats models.graphics.tsaplots import plot_acf
plot_acf(my_model.weekly_sales)