如何在 matlab 中设置阶跃颜色条?
How to setup step colorbar in matlab?
我想更改Matlab默认生成的颜色条(jet color),尤其是颜色的step(如下图)。怎么做?
这是我的代码
[hC hC] = contourf(interp2(sal,2,'spline'),[0:0.5:5]);
set(hC,'LineStyle','none','YTick',0:4);
colorbar;
您可以使用以下方法调整颜色栏属性:
c=colorbar;
c.Ticks=[vector of tick locations]
或者您也可以试试
c.Limits=[min max]
请参阅 MATLAB 文档了解颜色栏属性:http://www.mathworks.com/help/matlab/ref/colorbar-properties.html?refresh=true
这更详细地解释了彩条自定义
如果您希望减少等高线图和颜色条中的颜色数量,则可以使用减少的颜色集设置新的颜色图。
%Get 10 colors from jet
numColors = 10;
colormap(jet(numColors))
data = peaks;
contourf(data)
% Optionally you can set yTicks in conjunction with the number of items in your colormap to line up
colorbar('YTick',linspace(min(data(:)),max(data(:)),numColors+1))
编辑:
如果您想更好地控制等高线的绘制位置,请使用此形式的函数 countourf(data,v)
,其中 v
是所需等高线级别的单调递增向量。示例:
contourf(data,linspace(-7,8,numColors))
c = colorbar('YTick',linspace(-7,8,numColors+1));
将在 -7、-5.33、-3.66 ... 8 处绘制 10 条等高线。将 -7 和 8 替换为您想要的任何内容。 min/max 数据或任何对您的应用程序有意义的数据
我想更改Matlab默认生成的颜色条(jet color),尤其是颜色的step(如下图)。怎么做?
这是我的代码
[hC hC] = contourf(interp2(sal,2,'spline'),[0:0.5:5]);
set(hC,'LineStyle','none','YTick',0:4);
colorbar;
您可以使用以下方法调整颜色栏属性:
c=colorbar;
c.Ticks=[vector of tick locations]
或者您也可以试试
c.Limits=[min max]
请参阅 MATLAB 文档了解颜色栏属性:http://www.mathworks.com/help/matlab/ref/colorbar-properties.html?refresh=true
这更详细地解释了彩条自定义
如果您希望减少等高线图和颜色条中的颜色数量,则可以使用减少的颜色集设置新的颜色图。
%Get 10 colors from jet
numColors = 10;
colormap(jet(numColors))
data = peaks;
contourf(data)
% Optionally you can set yTicks in conjunction with the number of items in your colormap to line up
colorbar('YTick',linspace(min(data(:)),max(data(:)),numColors+1))
编辑:
如果您想更好地控制等高线的绘制位置,请使用此形式的函数 countourf(data,v)
,其中 v
是所需等高线级别的单调递增向量。示例:
contourf(data,linspace(-7,8,numColors))
c = colorbar('YTick',linspace(-7,8,numColors+1));
将在 -7、-5.33、-3.66 ... 8 处绘制 10 条等高线。将 -7 和 8 替换为您想要的任何内容。 min/max 数据或任何对您的应用程序有意义的数据