主要内容

本页采用了机器翻译。点击此处可查看英文原文。

contourcbar

用于显示填充等高线图的颜色栏

    说明

    添加颜色栏

    contourcbar 在当前坐标轴的右侧显示一条垂直颜色栏。颜色栏显示当前的颜色图,并指示数据值在颜色图中的映射关系。如果当前坐标轴包含由 contourmcontourfmcontour3mgeoshow 函数创建的等高线对象,则 contourcbar 函数会将颜色图划分为若干部分,这些部分分别对应图中的等高线水平。否则,颜色栏将显示当前的颜色图。

    示例

    contourcbar(location) 会在特定位置显示颜色栏,例如 "northoutside"

    示例

    contourcbar(___,Name,Value) 通过一个或多个名称-值参量来修改颜颜色栏的外观,此外还可以结合使用前几种语法中的任意输入参量组合。例如,"Direction","reverse" 会将颜色标度反转。

    contourcbar(ax,___) 会在 ax 指定的坐标轴上添加一条颜颜色栏。在上述任何一种语法中,将目标坐标区指定为第一个参量。

    c = contourcbar(___) 返回 ColorBar 对象。

    示例

    移除颜色栏

    contourcbar("off") 会删除与当前坐标轴关联的所有颜色栏。

    contourcbar(ax,"off") 会删除与目标坐标区关联的所有颜色栏。

    示例

    全部折叠

    为北美洲生成一张包含高程和水深数据的填充等高线图。每 1000 米指定一个新的等高线高度。

    load topo60c
    worldmap("north america")
    levels = -8000:1000:4000;
    contourfm(topo60c,topo60cR,levels)

    使用最小和最大等高线级别设置颜色图的范围。然后,添加一条颜色栏。

    clim([min(levels) max(levels)])
    contourcbar

    Figure contains an axes object. The hidden axes object contains 33 objects of type patch, line, text.

    从 EGM96 大地水准面模型中读取大地水准面高度。使用等高线图显示数据,并指定非均匀的等高线间距。

    worldmap world
    plabel off
    mlabel off
    
    [N,R] = egm96geoid;
    levels = [-70 -40 -20 -10 0 10 20 40 70];
    contourfm(N,R,levels)

    使用大地水准面高度的最小值和最大值来指定颜色图的范围。然后,在等高线图下方添加一个带标注的色标。调整刻度位置,使其与等高线等级相匹配。

    clim([min(min(N)) max(max(N))])
    cb = contourcbar("southoutside");
    cb.XLabel.String = "Geoid Heights in Meters";
    cb.Ticks = levels;

    Figure contains an axes object. The hidden axes object contains 22 objects of type patch, line.

    输入参数

    全部折叠

    颜色栏相对于坐标轴的位置,指定为该表中的某个值。

    结果位置表示的方向
    "north"坐标区顶部水平
    "south"坐标区底部水平
    "east"坐标区右侧垂直
    "west"坐标区左侧垂直
    "northoutside"坐标区外侧顶部水平
    "southoutside"坐标区外侧底部水平
    "eastoutside"坐标区外侧(默认)垂直
    "westoutside"坐标区的左外侧垂直

    如果指定位置已存在颜颜色栏,则更新后的颜颜色栏将替换原有的颜颜色栏。为确保颜颜色栏不与图表重叠,请指定一个以 outside 为后缀的位置。

    您还可以通过 Location 属性设置颜色栏的位置。例如,contourcbar("Location","northoutside")contourcbar("northoutside") 是相同的。

    示例: contourcbar("westoutside")

    包含相关数据可视化的目标坐标区,指定为一个 Axes 对象。如果未指定目标坐标区,则该函数将作用于当前坐标区。

    名称-值参数

    全部折叠

    将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

    示例: contourcbar(FontSize=12,Direction="reverse") 将字体大小设置为 12,并反转颜色刻度的方向

    如果使用的是 R2021a 之前的版本,请使用逗号分隔每个名称和值,并用引号将 Name 引起来。

    示例: contourcbar("FontSize",12,"Direction","reverse") 将字体大小设置为 12,并反转颜色刻度的方向

    注意

    使用名称-值参量为该函数创建的 ColorBar 对象的属性指定值。此处列出的属性仅为子集。有关完整列表,请参阅 ColorBar 属性

    相对于坐标轴的位置,指定为下表中所列值之一。

    结果位置表示的方向
    "north"坐标区顶部水平
    "south"坐标区底部水平
    "east"坐标区右侧垂直
    "west"坐标区左侧垂直
    "northoutside"坐标区外侧顶部水平
    "southoutside"坐标区外侧底部水平
    "eastoutside"坐标区外侧(默认)垂直
    "westoutside"坐标区的左外侧垂直
    "manual"Position 属性决定垂直

    若要在表格中未显示的位置显示颜色栏,请使用 Position 属性来指定自定义位置。如果指定了 Position 属性,那么 MATLAB® 会将 Location 属性指定为 "manual"。当 Location 属性被指定为 "manual" 时,相关坐标轴不会调整大小以适应颜色栏。

    复选标记标签,指定为字符向量元胞数组、字符串数组、数值数组、字符向量或分类数组。默认情况下,颜色栏会用值对刻度进行标注。如果您指定了标签,但指定的标签数量不足以覆盖所有刻度,那么对于剩余的刻度,MATLAB 将循环使用已指定的标签。

    如果将此属性指定为分类数组,MATLAB 将使用数组中的值,而不是分类。

    示例: {"cold","warm","hot"}

    刻度位置,指定为一个由递增值组成的向量。这些值不必等间距分布。如果不想显示刻度线,请将该属性设置为空向量 []

    示例: [-1 0 1 2 3 4 5]

    数据类型: single | double

    颜色标尺的方向,指定为以下值之一:

    • "normal" — 对于垂直颜色栏,将颜色图和标签从下到上按升序排列;对于水平颜色栏,则从左到右按升序排列。

    • "reverse" — 对于垂直颜色栏,将颜色图和标签从下往上显示;对于水平颜色栏,则从左往右显示。

    字体大小,以点为单位的正标量表示。默认字体大小取决于具体的操作系统和区域设置。

    如果更改坐标轴的字体大小,MATLAB 会自动将颜色栏的字体大小设置为坐标轴字体大小的 90%。如果您手动设置了颜色栏的字体大小,那么更改坐标轴的字体大小不会影响颜色栏的字体。

    提示

    • contourcbar 函数支持与 colorbar 函数相同的语法和选项。

    • 如果坐标轴中包含由 contourmcontourfmcontour3mgeoshow 函数创建的多个等高线对象,则 contourcbar 函数会使用在坐标轴中找到的第一个等高线对象将颜色栏划分为若干部分。

    • 若要在颜颜色栏上添加文本说明,请通过颜颜色栏的 Label 属性访问其底层的文本对象。

      c.Label.String = "My Colorbar Label";
      

      要更改标签的外观(例如字体样式或颜色),请设置其他文本属性。有关属性的列表,请参见 Text 属性。例如,这段代码会更改字体大小。

      c.Label.FontSize = 12;

    • 添加颜颜色栏可能会调整坐标轴的大小,以适应颜颜色栏。

    • 如果轴不存在,则 contourcbar 函数会创建一个空轴,并显示一条使用默认颜色图的颜色栏。

    版本历史记录

    在 R2011b 中推出

    全部展开