【问题标题】:plotting in loop, only getting last plot循环绘制,只得到最后一个情节
【发布时间】:2014-01-10 16:41:26
【问题描述】:

我正在使用 matplotlib。代码:

for new_counter in range(counter+1):
    print new_counter
    Qbers = final_data[(final_data["Dataset"]==counter) & (final_data["Qber"] > 0) ]
    x1 = Qbers.index.tolist()
    y1 = Qbers["Qber"].tolist()
    Raws = final_data[(final_data["Dataset"]==counter) & (final_data["Raw key"] > 0) ]
    x2 = Raws.index.tolist()
    y2 = Raws["Raw key"].tolist()
    # Two subplots, the axes array is 1-d http://matplotlib.org/examples/pylab_examples/subplots_demo.html
    f, axarr = plt.subplots(2, sharex=True)
    axarr[0].grid()
    axarr[0].plot(x1, y1)
    axarr[0].set_title('Sharing X axis')
    axarr[1].grid()
    axarr[1].plot(x2, y2)
    plt.savefig(str(counter)+'foo.eps')
    plt.clf()

我只收到最后一个情节的文件,我的数据应该收到其中的 6 个。如何解决?附加问题:如何防止创建带有绘图的交互式窗口?

【问题讨论】:

标签: python matplotlib plot


【解决方案1】:

您似乎没有生成唯一的文件名。你可能想要:

plt.savefig(str(new_counter)+'foo.eps')

【讨论】:

    猜你喜欢
    • 2021-04-24
    • 2019-08-01
    • 1970-01-01
    • 2012-12-06
    • 2022-01-23
    • 2020-11-10
    • 2018-06-13
    • 1970-01-01
    • 2015-04-08
    相关资源
    最近更新 更多