如何更改matlab颜色条缩放

如何更改matlab颜色条缩放,matlab,colorbar,colormap,Matlab,Colorbar,Colormap,我真的很难理解如何在Matlab2015b中更改颜色条的范围 默认情况下,其范围为0到1。我通过以下方法更改了标签: c=colorbar; c、 限制=[0 180]%我想要的范围 问题是当我这样做时,颜色不会缩放,换句话说,它将显示从0到180,但仍然使用与[0 1]关联的颜色,这使得整个条看起来像一种颜色 我使用了另一种方法,只需更改刻度并执行以下操作: colorbar('Yticks',[0:10:180]) 同样,颜色条仍然与0到1相关联,因此除0之外的任何标记都不会出现,因为第

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

默认情况下,其范围为0到1。我通过以下方法更改了标签:

c=colorbar;
c、 限制=[0 180]%我想要的范围
问题是当我这样做时,颜色不会缩放,换句话说,它将显示从0到180,但仍然使用与[0 1]关联的颜色,这使得整个条看起来像一种颜色

我使用了另一种方法,只需更改刻度并执行以下操作:

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

同样,颜色条仍然与0到1相关联,因此除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=[0180];
c=色条;
集合(gca,'clim',限制([1,结束])
从那里,可以根据需要手动更改或保留刻度

  • 原始比例色条
  • 重新缩放,但保留自动勾选标签

  • 你能发布你的代码样本吗?我无法重现这个问题。我的colorbar自动使用数据范围。当然,在这种情况下,我实际上是将colorbar与绘图本身分开使用,这不像我绘制曲面并将colorbar添加到曲面中。我正在绘制一系列曲线,我想使用颜色条而不是图例(因为有很多曲线,这样看起来会更好)。h=对数(翻转LR(总长度)/1e6,zTab/1000);%我正在绘制的曲线集colorCode=jet(长度(chiTab));对于k=1:length(chiTab)%length(chiTab)只是曲线集的数目(h(k),‘Color’,colorCode(k,:);结束颜色映射(颜色代码);色条;