我正在使用AxesGrid类制作一个如下图:
代码基本上如下所示:
grid = AxesGrid(fig,
111,
nrows_ncols = (2,2),
axes_pad = 0.50,
label_mode = "all",
cbar_location='right',
cbar_mode='single',
cbar_pad =0.3,
cbar_size='5%'
)
然后对于4个面板中的每一个,我称之为imshow和这样的轮廓:
# some definitions etc.
im1 = grid[0].imshow(np.transpose(De[i1:i2,j1:j2]),
aspect='equal',
vmin=vmin, vmax = vmax,
origin='lower',
extent=extent)
# some other stuff [...]
grid[0].contour(np.transpose(F[i1:i2,j1:j2]),levels=levls,
extent=extent,colors='k',cmap=None)
# and so on for the 3 other panels
唯一的区别是,现在,我希望图像对extent关键字具有不同的值。 假设我希望右上角的图像具有(31.5,35.5,11,14)的范围,而右下角的图像具有(29.5,33.5,11,14)的范围,我得到这个:
看来matplotlib会调整轴。有没有办法指定我想要的范围,而且我的数据和斧头之间没有空白空格?
答案 0 :(得分:0)
添加参数:
share_x=False
到您的网格生成。然后你可以单独设置每个图的xlim。