Ess*_*sex 2 python matplotlib colorbar
我有一个小问题,我暂时找不到解决方案。我有一个脚本,可以在循环中生成大量数字。我循环第一个文件,制作 10 个数字,然后我取第二个文件等等......
一切似乎都有效,但在我的最后一张图中,我得到一个颜色条,然后在第二个循环后得到 2 个颜色条,然后是 3 个等等......这个问题只出现在我的最后一个图中。
你对这种问题有什么想法吗?
这是我的最后一个情节的循环结束:
fig = plt.gcf()
SN_map_final = (S_N_map - mean_SN) / sigma_SN
fig12 = plt.figure(12)
fig_SN_final = plt.imshow(SN_map_final)
cbar = plt.colorbar()
cbar.set_label(r'Signal to Noise (significance $\sigma$)')
plt.xlabel('X (arcmin)')
plt.ylabel('Y (arcmin)')
plt.title('Signal to Noise map')
fig12 = plt.savefig(outname12)
Run Code Online (Sandbox Code Playgroud)
谢谢你,如果你有办法解决这个问题;)
解决方案 :
我补充说:
plt.clf()
Run Code Online (Sandbox Code Playgroud)
在我的循环结束时,它似乎有效
我只是修改了你的代码来绘制一些图像,然后我测试了它。问题是您保存后没有正确清除图形。因此,每次调用 plt 时,它都会获取当前图形(已经有一些绘图)并与新图形重叠。如果保存后清除Figure,则问题解决:
im = np.random.rand(100,100)
for i in xrange(10):
fig12 = plt.figure(12)
fig_SN_final = plt.imshow(im)
cbar = plt.colorbar()
cbar.set_label(r'Signal to Noise (significance $\sigma$)')
plt.xlabel('X (arcmin)')
plt.ylabel('Y (arcmin)')
plt.title('Signal to Noise map')
plt.savefig(str('%03d'%i)+'.png')
plt.clf()
Run Code Online (Sandbox Code Playgroud)
我测试了前面的例子并且对我有用。
归档时间: |
|
查看次数: |
1953 次 |
最近记录: |