我相信caxis是你正在寻找的命令.用法:
caxis([minValue maxValue])
使用像这样的caxis,范围[minValue maxValue]之外的所有值将分别用colormap中的最低或最高值着色.
由于colorbar和朋友使用色彩映射,如果要调整使用的颜色数量,则必须调整当前色彩映射.这样做:
%# get current colormap
map = colormap;
%# adjust for number of colors you want
rows = uint16(linspace(1, size(map,1), NUM_COLORS)) ;
map = map(rows, :);
%# and apply the new colormap
colormap(map);
当然,将此与caxis相结合是最强大的.
如果您不想显示范围之外的某些值,那不是colorbar或caxis的工作,那取决于您 – 您必须调整绘制的数据,以便您不想绘制的所有值都是NaN的.这样做将使Matlab明白您不想绘制这些数据:
data( indices_to_data_not_to_plot ) = NaN;
surf(x,y,data); %# or whatever you're using