Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

set

设置图形对象属性

    说明

    示例

    set(h,Name,Value) 使用一个或多个名称-值参数设置指定图形对象 h 的属性。如果 h 是对象的向量,则 set 会为 h 中的所有对象设置属性。如果 h 为空 ([ ]),则 set 不执行任何操作,也不返回错误或警告。

    有关您可以设置的属性的详细信息,请参阅每个对象的属性页,例如 Figure 属性Axes 属性Line 属性Text 属性

    set(h,defaultTypeProperty,defaultValue) 使用一个或多个属性名称与值对组更改指定图形对象 h 的指定属性和对象类型的默认值。defaultTypeProperty 是用引号引起来的单词 default 与对象类型(如 Figure)和属性名称(如 Color)的串联形式。例如,set(groot,"defaultFigureColor","red") 将图形根对象 grootFigure 对象的 Color 属性的默认值更改为 red

    示例

    set(h,NameArray,ValueArray) 为指定的图形对象 h 设置多个属性。

    • 如果 h 是标量对象,则将 NameArrayValueArray 指定为包含一个或多个属性名称或值的 1×n 元胞数组,其中 n 是要设置的属性的数量。

    • 如果 h 是一个由对象组成的向量,要为 h 中的每个对象设置不同属性值,请将 ValueArray 指定为 m×n 元胞数组,其中 m 是 h 中元素的数量,n 是 NameArray 中包含的属性名称的数量。

    示例

    set(h,a) 使用 a 设置多个属性,它是一个结构体,其字段名称是对象属性名称,字段值是对应的属性值。如果 a 为空,则 set 不执行任何操作,也不返回错误或警告。

    示例

    s = set(h) 返回指定图形对象 h 的用户可设置属性和可能的值。h 必须为单个对象。此语法不会更改 h 的属性。

    如果未指定 s,则 set 会在命令行窗口中显示用户可设置的属性和可能的值。

    v = set(h,propertyName) 返回指定属性的可能值。如果可能的值是字符向量或字符串,则 set 返回包含这些值的元胞数组。对于没有固定值集的其他属性,set 返回一个空元胞数组。h 必须为单个对象。此语法不会更改 h 的属性。

    如果未指定 v,则 set 会在命令行窗口中显示可能的值。

    示例

    全部折叠

    创建一个线图并以 p 形式返回 Line 对象。将行的 Color 属性设置为 "red"

    p = plot(1:10);
    set(p,"Color","red")

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

    创建一个包含三个按钮的图窗,并将它们放入数组 btns 中。将所有按钮的 FontColor 属性设置为 "red"

    fig = uifigure;
    btn1 = uibutton(fig,"Position",[100 100 100 20]);
    btn2 = uibutton(fig,"Position",[100 75 100 20]);
    btn3 = uibutton(fig,"Position",[100 50 100 20]);
    btns = [btn1 btn2 btn3];
    set(btns,"FontColor","red")

    Figure contains objects of type uibutton.

    使用随机数据创建一个包含四个线条的图形,并将这四个 Line 对象以 p 形式返回。将四个 Line 对象中每个对象的 LineStyle 属性设置为不同值。将 LineStyle 值列表从行向量转置为列向量以匹配 p 的形状。

    p = plot(rand(4));
    NameArray = {'LineStyle'};
    ValueArray = transpose({'-','--',':','-.'});
    set(p,NameArray,ValueArray)

    Figure contains an axes object. The axes object contains 4 objects of type line.

    绘制一个离散数据序列,并将三个 Stem 对象以 st 形式返回。将三个不同 Stem 对象的 MarkerTag 属性设置为不同值。值元胞数组的每一行对应于 st 中的一个对象且包含两个值,一个对应于 Marker 属性,一个对应于 Tag 属性。

    x = 0:30;
    y = [1.5*cos(x); 4*exp(-.1*x).*cos(x); exp(.05*x).*cos(x)]';
    st = stem(x,y);
    NameArray = {'Marker','Tag'};
    ValueArray = {'o','Decaying Exponential'; ...
       'square','Growing Exponential'; ...
       '*','Steady State'};
    set(st,NameArray,ValueArray)

    Figure contains an axes object. The axes object contains 3 objects of type stem.

    创建一个图窗并返回用户可设置的图窗属性和可能值。

    fig = uifigure;
    s = set(fig);

    显示 Pointer 属性的可能值。

    s.Pointer
    ans = 17x1 cell
        {'arrow'    }
        {'ibeam'    }
        {'crosshair'}
        {'watch'    }
        {'topl'     }
        {'topr'     }
        {'botl'     }
        {'botr'     }
        {'circle'   }
        {'cross'    }
        {'fleur'    }
        {'custom'   }
        {'left'     }
        {'top'      }
        {'right'    }
        {'bottom'   }
        {'hand'     }
    
    

    创建一个包含 NameColorPointer 字段的结构体,并使用该结构体为该图窗设置这些属性。

    a.Name = "My App";
    a.Color = "red";
    a.Pointer = "crosshair";
    
    set(fig,a)

    输入参数

    全部折叠

    图形对象,指定为单个对象或对象向量。

    注意

    不要对 Java® 对象使用 set 函数,因为这会导致内存泄漏。有关详细信息,请参阅Access Public and Private Data

    属性值对组,指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是属性名称,Value 是对应的值。

    每种类型的对象支持一组不同的属性。有关每种类型的属性和描述的完整列表,请参阅相关联的对象属性页(例如,Figure 属性Axes 属性Line 属性Text 属性)。

    要设置属性值,请指定名称并后跟等号 (=) 及其对应的值。例如,set(h,Color="red")

    在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。例如,set(h,"Color","red")

    要将属性设置为其默认值,请将属性值指定为用引号引起来的单词 default。例如,set(h,"Color","default")

    有关设置默认值的详细信息,请参阅默认属性值

    默认属性值对组,指定为 defaultTypeProperty1=defaultValue1,...,defaultTypePropertyN=defaultValueN,其中 defaultTypeProperty 是用引号引起来的单词 default 与对象类型(如 Figure)和属性名称(如 Color)的串联形式,defaultValue 是对应的默认值。

    要更改默认属性值,请指定 defaultTypeProperty 并后跟等号 (=) 及其对应的默认值。例如,set(h,defaultFigureColor="red")

    在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。例如,set(h,"defaultFigureColor","red")

    要删除属性的默认值,请将属性值指定为用引号引起来的单词 remove。例如,set(h,"defaultFigureColor","remove")

    有关设置默认值的详细信息,请参阅默认属性值

    属性名称,指定为包含一个或多个属性名称的元胞数组。

    属性值,指定为 m×n 元胞数组,其中 m 是 h 中元素的数量,n 是 NameArray 中包含的属性名称的数量。

    对象的属性名称和值,指定为结构体,其字段名称是对象的属性名称,其字段值是对应的属性值。

    属性名称,指定为字符串标量或字符向量。

    输出参数

    全部折叠

    属性名称及其值,以结构体形式返回。在结构体中,字段名称是对象属性名称,字段值是对应属性的可能值。

    可能的属性值,以元胞数组形式返回。如果可能的值是字符向量或字符串,则 set 返回包含这些值的元胞数组。对于没有固定值集的其他属性,set 返回一个空元胞数组。

    提示

    • 在同一个 set 语句中设置 FontSizeFontUnits 属性时,请先指定 FontUnits 属性。此顺序允许 set 函数按预期解释指定的 FontSize。同样,当设置图窗和坐标区单位时,请先设置 Units 属性,然后设置使用指定单位计算其值的其他属性。例如,以下命令先设置 Units 属性,再设置 Position 属性,其测量单位由 Units 属性指定。

      f = figure;
      set(f,"Units","characters","Position",[30 30 120 35]);

    版本历史记录

    在 R2006a 之前推出

    另请参阅

    函数