matplotlib - plt.figure()冻结

时间:2014-06-08 20:33:55

标签: python matplotlib python-3.3

我有渲染一些情节的功能,然后将其保存到png文件中。简化代码:

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()

函数冻结在“fig = plt.figure()”行(100%CPU使用率 - 无限循环?)但仅在第二次或第三次调用函数时,第一次正常工作并呈现好看的情节。可能是什么原因?

1 个答案:

答案 0 :(得分:-1)

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

ax=fig.add_subplot(111)

尝试

ax = plt.gca()

然后,发表评论

plt.close()

这可能会有所帮助。只是一个猜测。