Main Content

创建颜色栏

通过颜色栏可以查看数据与图形中所示颜色之间的关系。创建颜色栏后,可以自定义外观的不同方面,例如位置、厚度和刻度标签。例如,此颜色栏显示 peaks 函数的值与其旁边图中所示颜色之间的关系。

contourf(peaks)
c = colorbar;

Figure contains an axes object. The axes object contains an object of type contour.

颜色栏的默认位置为坐标区右侧。但是,您可以通过设置 Location 属性将颜色栏移至不同位置。本例中使用 southoutside' 选项将颜色栏放在坐标区下方。

c.Location = 'southoutside';

Figure contains an axes object. The axes object contains an object of type contour.

您也可以更改颜色栏的厚度。Position 属性控制大部分图形对象(包括坐标区和颜色栏)的位置和大小。由于此颜色栏是水平的,因此 c.Position 中的第四个值(对应于高度)控制其厚度。此处的颜色栏变窄,且坐标区位置进行了重置,因此没有与此颜色栏重叠。

ax = gca;
axpos = ax.Position;
c.Position(4) = 0.5*c.Position(4);
ax.Position = axpos;

Figure contains an axes object. The axes object contains an object of type contour.

Colorbar 对象具有多项用于修改刻度间距和标签的属性。例如,您可以指定仅在这三处显示刻度:-6.508

c.Ticks = [-6.5 0 8];

Figure contains an axes object. The axes object contains an object of type contour.

您可以将刻度标签更改为任意值。使用元胞数组指定刻度标签。

c.TickLabels = {'Frigid','Freezing','Cold'};

Figure contains an axes object. The axes object contains an object of type contour.

您也可以使用 TeX 或 LaTeX 标记。在使用 TeX 或 LaTeX 时通过 TickLabelInterpreter 属性设置解释器。

c.TickLabelInterpreter = 'tex';
c.TickLabels = {'-6.5\circ','0\circ','8\circ'};

Figure contains an axes object. The axes object contains an object of type contour.

您可以更改颜色栏的范围以突出显示特定颜色区域。例如,您可以缩小范围,并调整刻度标签以反映新范围。得到的颜色栏排除了原本位于左端的深蓝色以及原本位于右端的黄色。

c.Limits = [-4 4];
c.Ticks = [-4 0 4];
c.TickLabels = {'-4\circ','0\circ','4\circ'};

Figure contains an axes object. The axes object contains an object of type contour.

使用 Label 属性向颜色栏添加描述性标签。由于 Label 属性必须作为 Text 对象指定,因此必须先设置 Text 对象的 String 属性。然后即可将此 Text 对象赋给 Label 属性。使用以下命令只需一步即可完成这两项任务。

c.Label.String = 'Degrees Celsius';

Figure contains an axes object. The axes object contains an object of type contour.

另请参阅

函数

属性