如何在MATLAB中标记colorbar标记?

Sha*_*gee 4 matlab

我想手动设置我的colorbar's刻度标签及其位置水平.例如:

 Min=0.8;       
 Max=12;    
 h = colorbar('horiz');       
 set(h,'location','southoutside')
 set(h,'XTickLabel',{num2str(Min),'mm'  ,num2str(Max)})
Run Code Online (Sandbox Code Playgroud)

但是,上面的代码重复了tick标签.如何手动设置滴答数?我想让我colorbar看起来像下面这样:

****----------------****         //colorbar
min        [mm]           max
Run Code Online (Sandbox Code Playgroud)

Bil*_*ham 7

您可以设置刻度线的位置,如下所示:

set(h, 'XTick', [Min, (Min+Max)/2, Max])
Run Code Online (Sandbox Code Playgroud)

请注意,这可能看起来不正确,除非您的绘图的颜色限制设置为[0.8,12]范围.你可以这样做:

set(gca, 'CLim', [Min, Max])
Run Code Online (Sandbox Code Playgroud)

此外,将单位"mm"添加到颜色栏的更好方法如下:

h = colorbar('horiz');  
set(gca, 'CLim', [Min, Max])
set(h, 'XTick', [Min, Max])
set(h,'XTickLabel',{num2str(Min) ,num2str(Max)}) %# don't add units here...
xlabel(h, 'mm')                                  %# ...use xlabel to add units
Run Code Online (Sandbox Code Playgroud)