我有一个for循环想绘制多个图形,但它们是互相绘制的,我到底做错了什么?

我有这段代码,它应该返回多个图形,但由于某些原因我无法理解(从未遇到过这个问题)。我得到了多个图形,但是当它在循环中迭代时,第一个图形之后的图形包含了之前所有的图形。

for x in np.arange(0,3):
    t1= table.iloc[x,2]
    t2= table.iloc[44,2]
    dts = np.arange(-0.02,0.02,0.0001)
    cc = np.zeros(len(dts))
    for i,dt in enumerate(dts):
        n1,v=np.histogram(t1,899*100)
        n2,v=np.histogram(t2-dt,bins=v)
        cc[i] = np.corrcoef(n1,n2)[0,1]
    plt.plot(dts,cc)
    #plt.title(str(table[table['ClusterNames']==test1.iloc[x,0]].iloc[0,0])+'_'+str(table[table['ClusterNames']==test1.iloc[x,1]].iloc[0,0]))
    filename='step'+str(x).zfill(6)+'.png'
    plt.savefig(filename, form='png', dpi = 96, transparent = True)

我到底做错了什么?

谢谢!我有这样的代码,它应该是在循环中包含所有之前的图形。

解决方案:

有很多方法可以解决这个问题。如果要在保存后清空图形,你可以添加以下内容 plt.clf() 到循环的末端。要在一页纸上绘制所有内容,您可以使用 plt.subplot2gridplt.subplots.

给TA打赏
共{{data.count}}人
人已打赏
解决方案

上传图片并获得可读格式

2022-4-20 14:01:26

解决方案

如何改变Mat-Calandar的显示值?

2022-4-20 14:01:29

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索