Python色彩条:如何在for循环中停止其重复

Yin*_*Gao 5 python matplotlib

我编写了一个for循环来生成一组图像:

for p in range(0,153):
im=plt.imshow(M[p,0:28,:].T,extent=[0,time.max(),depth.max(),0],aspect='auto')
plt.tight_layout()
cbar=plt.colorbar(im,orientation='vertical')
cbar.set_label('Vz[mm]')
plt.title('Rohdaten '+str(p)+'. Umlauf D874 Ch5')
plt.xlabel('Messzeit[s]')
plt.ylabel('Messtiefe[mm]')
savefig(os.path.join('/Users/gaoyingqiang/Desktop/1-153Umlauf',str(p)+'.png'))
Run Code Online (Sandbox Code Playgroud)

但这使图像中的颜色条像下面那样循环: 是不是很奇怪

我不明白为什么彩条在重复自己。

Imp*_*est 3

如果我正确解释不完整的代码,您想要保存不同的数字,每个数字都有一个颜色条。

  1. 实际上,您可以创建不同的图形,而不是通过关闭旧图形来一遍又一遍地操作同一个图形plt.close("all")
  2. 您可以使用 清除旧图形plt.clf(),从而对相同但为空的图形进行操作。

例子:

for p in range(0,153):

    im=plt.imshow(M[p,0:28,:].T,extent=[0,time.max(),depth.max(),0],aspect='auto')
    plt.tight_layout()
    cbar=plt.colorbar(im,orientation='vertical')
    cbar.set_label('Vz[mm]')
    plt.title('Rohdaten '+str(p)+'. Umlauf D874 Ch5')
    plt.xlabel('Messzeit[s]')
    plt.ylabel('Messtiefe[mm]')
    savefig(os.path.join('/Users/gaoyingqiang/Desktop/1-153Umlauf',str(p)+'.png'))
    plt.close("all")
Run Code Online (Sandbox Code Playgroud)