如何更改 matlab colorbar 缩放比例
How do I change matlab colorbar scaling
我很难理解如何在 Matlab2015b 中更改颜色条的范围。
默认情况下,它的范围从 0 到 1。我设法使用以下方法更改了标签:
c=colorbar;
c.Limits=[0 180] % the range that I want
问题是当我这样做时颜色没有缩放,换句话说它将显示从 0 到 180 但仍然使用与 [0 1] 关联的颜色,这使得整个条形看起来像一个颜色.
我使用了另一种方法,只需更改刻度并执行以下操作:
colorbar('Yticks',[0:10:180])
。
同样,颜色条仍然与 0 到 1 相关联,因此 none 个刻度除了 0 将显示为第一个从 10 开始。
如何更改它所基于的数据?我尝试更改 c.UserData
但它没有任何作用。
从你的评论中,我明白了你想做什么。
您在正确的线条设置 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);
一种不手动覆盖刻度规范的方法可以通过以下方式实现:
limits = [0,180];
c = colorbar;
set(gca,'clim',limits([1,end]))
从那里,可以根据需要手动更改或保留刻度。
- 原始比例色条
- 重新缩放,但保留自动勾选标签
我很难理解如何在 Matlab2015b 中更改颜色条的范围。
默认情况下,它的范围从 0 到 1。我设法使用以下方法更改了标签:
c=colorbar;
c.Limits=[0 180] % the range that I want
问题是当我这样做时颜色没有缩放,换句话说它将显示从 0 到 180 但仍然使用与 [0 1] 关联的颜色,这使得整个条形看起来像一个颜色.
我使用了另一种方法,只需更改刻度并执行以下操作:
colorbar('Yticks',[0:10:180])
。
同样,颜色条仍然与 0 到 1 相关联,因此 none 个刻度除了 0 将显示为第一个从 10 开始。
如何更改它所基于的数据?我尝试更改 c.UserData
但它没有任何作用。
从你的评论中,我明白了你想做什么。
您在正确的线条设置 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);
一种不手动覆盖刻度规范的方法可以通过以下方式实现:
limits = [0,180];
c = colorbar;
set(gca,'clim',limits([1,end]))
从那里,可以根据需要手动更改或保留刻度。
- 原始比例色条
- 重新缩放,但保留自动勾选标签