2014-06-08 58 views
1

我有函數呈現一些情節,然後將其保存到PNG文件。簡化的代碼:matplotlib - plt.figure()凍結

def render_plot(self, parameter1, parameter2): 

    dates = get_my_dates() 
    values = get_my_values() 
    fig = plt.figure() # freezes here when calling render_plot for the 2nd or 3rd time! 
    ax = fig.add_subplot(111) 

    ... # performing some calculations and drawing plots 

    ax.plot_date(dates, values, '-', marker='o') 

    plt.savefig("media/plot.png") 
    plt.cla() 
    plt.clf() 
    plt.close() 

功能凍結在線「無花果= plt.figure()」(?100%的CPU使用率 - 無限循環),但只有在調用函數第二或第三時間時,在第一次工作正常和呈現好看的情節。可能是什麼原因?

回答

-1

這可能是不是這個原因,但首先,你不需要

ax=fig.add_subplot(111) 

儘量只

ax = plt.gca() 

然後,評論

plt.close() 

它可以幫助。只是一個猜測。

+0

不幸的是,它沒有幫助..仍然凍結。 – Signum