Matplotlib plt对象在绘图之间共享

时间:2018-06-27 20:12:46

标签: matplotlib

我有2个函数,一个绘制时间序列线,另一个绘制自相关。

def plotacorr(dfasst):
    # Plot autocorrelation
    plt.acorr(dfasst, maxlags=3)
    # Add labels to autocorrelation plot
    plt.title('Autocorrelation of Asset Balances with previous Months Balances')
    plt.xlabel('Lag in Months')
    plt.ylabel('Autocorrelation')

    # Display the autocorrelation plot
    #plt.show()
    plt.savefig('C:/acorr_assets.jpeg')

def plottrend(df_acctsmry2):
    fig, ax = plt.subplots()
    fmt = '${x:,.0f}'
    tick = mtick.StrMethodFormatter(fmt)
    ax.yaxis.set_major_formatter(tick) 

    df_acctsmry2.plot(x='REPORTING_DATE',ax=ax,figsize=(20,12))
    plt.xticks(fontsize=20)
    plt.yticks(fontsize=20)
    plt.xlabel('REPORTING_DATE', fontsize=18)
    #plt.show()
    plt.savefig('C:/output.jpeg')

我先打电话给plottrend,然后是plotacorr 但是似乎plt对象以某种方式在2个图之间共享,因此在自相关图中,我看到的结果与plottrend相同。

1 个答案:

答案 0 :(得分:1)

取消注释应该执行的每个函数上的plt.show()(或在函数调用之间调用plt.show())。