我正在尝试创建一个色图矩阵,并且x和y限制具有不同的范围。我正在尝试使用AxesPlot,因为它具有对单个组的颜色条进行分组的出色功能-在我的情况下,我希望每行都使用颜色条。
但是使用正方形图而不是矩形(这意味着每个点应该是矩形而不是正方形)。在我的真实情况下,情况更加严峻,因为限制为xlim = [0,360]和ylim = [0,3.5],因此绘制的内容非常薄。
有可能吗?
以下是制作此示例图的代码:
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import AxesGrid
import numpy as np
fig = plt.figure(figsize=(10, 6))
nrow = 3
ncol = 1
grid = [ None for j in range( nrow ) ]
for j in range(0,nrow):
plot = nrow*100 + ncol*10 + (j+1)
grid[j] = AxesGrid(fig, plot,
nrows_ncols=(1, 3),
axes_pad=0.05,
cbar_mode='single',
add_all=True,
cbar_location='right',
cbar_pad=0.1
)
for ax in grid[j]:
ax.set_axis_off()
im = ax.imshow(np.random.random((8,16)), vmin=0, vmax=1)
cbar = ax.cax.colorbar(im)
cbar = grid[j].cbar_axes[0].colorbar(im)
cbar.ax.set_yticks(np.arange(0, 1.1, 0.5))
cbar.ax.set_yticklabels(['low', 'medium', 'high'])
plt.show()