如何将图像置于GridSpec分割帧中?我有下面的图像,我想让上面的图片居中。
相关代码(部分代码,尤其是单位,来自AMUSE框架):
lim = [-5,5] | units.kpc
bins = [100,100]
xyrange = [[-5,5],[-5,5]]
cmap = cm.jet
hist2d_xy,_,_ = np.histogram2d(particles.x.value_in(units.kpc),particles.y.value_in(units.kpc),bins=bins, range=xyrange)
hist2d_xz,_,_ = np.histogram2d(particles.x.value_in(units.kpc),particles.z.value_in(units.kpc),bins=bins, range=xyrange)
maximum_value = max([hist2d_xy.max(),hist2d_xz.max()])
gs = gridspec.GridSpec(2,1, height_ratios=[3,1])
ax1 = pyplot.subplot(gs[0])
pyplot.imshow(np.flipud(hist2d_xy.T),cmap=cmap,extent = np.array(xyrange).flatten(), interpolation='none',norm=colors.LogNorm(vmin=1,vmax=maximum_value))
cbar = pyplot.colorbar()
ax2 = pyplot.subplot(gs[1])
pyplot.imshow(np.flipud(hist2d_xz.T),cmap=cmap,extent = np.array(xyrange).flatten(), interpolation='none',norm=colors.LogNorm(vmin=1,vmax=maximum_value))
pyplot.ylim([-1,1])
cbar = pyplot.colorbar()
pyplot.tight_layout()
pyplot.savefig(file_location_for_pictures+'test_%.2f.png' %threshold)
pyplot.close()
答案 0 :(得分:0)
我替换了
gs = gridspec.GridSpec(2,1, height_ratios=[3,1])
ax1 = pyplot.subplot(gs[0])
ax2 = pyplot.subplot(gs[1])
带
ax1 = pyplot.subplot2grid((6,6), (0,1), colspan = 4, rowspan = 4)
ax2 = pyplot.subplot2grid((6,6), (4,0), colspan = 6, rowspan = 2)
(在正确的地方),它现在生成这张图片(编辑颜色并添加了一些文字,但想法很清楚):