如何更改matlab colorbar缩放

Kev*_*ier 6 matlab colorbar colormap

我很难理解如何在Matlab2015b中更改我的色条范围.

默认情况下,它的范围是0到1.我设法通过使用以下方法更改标签:

    c=colorbar;
    c.Limits=[0 180] % the range that I want
Run Code Online (Sandbox Code Playgroud)

问题是当我这样做时颜色不会缩放,换句话说,它将显示从0到180但仍然使用与[0 1]相关联的颜色,这使得整个条形看起来像一种颜色.

在此输入图像描述

我只是通过更改刻度并执行以下操作来使用另一种方法:

colorbar('Yticks',[0:10:180]).

同样,颜色条仍然与0到1相关联,因此除了0之外的任何刻度都不会出现,因为第一个从10开始.

在此输入图像描述

如何更改基于的数据?我试过改变,c.UserData但它没有做任何事情.

zel*_*nix 2

从你的评论中,我明白你想做什么。

您处于正确的行设置ytick,但正如您所注意到的,这只会更改颜色条上刻度线的位置,但缩放比例保持不变。相反,尝试设置yticklabel

% Show the colorbar
c = colorbar;

% Define the desired ticks
ticks = [0:10:180];

% Sets the correct location and number of ticks
set(c, 'ytick', ticks / max(ticks));

% Set the tick labels as desired
set(c, 'yticklabel', ticks);
Run Code Online (Sandbox Code Playgroud)