Main Content

figure

创建图窗窗口

说明

figure 使用默认属性值创建一个新的图窗窗口。生成的图窗为当前图窗

示例

figure(Name,Value) 使用一个或多个名称-值对组参量修改图窗的属性。例如,figure('Color','white') 将背景色设置为白色。

示例

f = figure(___) 返回 Figure 对象。可使用 f 在创建图窗后查询或修改其属性。

示例

figure(f)f 指定的图窗作为当前图窗,并将其显示在其他所有图窗的上面。

figure(n) 查找 Number 属性等于 n 的图窗,并将其作为当前图窗。如果不存在具有该属性值的图窗,MATLAB® 将创建一个新图窗并将其 Number 属性设置为 n

示例

全部折叠

创建一个默认图窗。

f = figure;

Figure window

获取该图窗的位置、宽度和高度。

f.Position
ans =

   680   558   560   420

这意味着图窗窗口位于主显示器左下角的右侧 680 像素和上方 558 像素处,宽 560 像素,高 420 像素。

通过调整位置向量的第三个和第四个元素,将图窗宽度和高度减半。

f.Position(3:4) = [280 210];

Figure window with width and height halved

创建一个图窗并指定 Name 属性。默认情况下,生成的标题包含图窗编号。

figure('Name','Measured Data');

Figure window with title "Figure 1: Measured Data"

再次指定 Name 属性,但这次将 NumberTitle 属性设置为 'off'。生成的标题不包含图窗编号。

figure('Name','Measured Data','NumberTitle','off');

Figure window with title "Measured Data"

创建两个图窗,然后创建一个线图。默认情况下,plot 命令的目标为当前图窗。

f1 = figure;
f2 = figure;
plot([1 2 3],[2 4 6]);

Two figure windows with titles "Figure 1" and "Figure 2". Figure 2 is in the foreground and contains a plot with some data.

将当前图窗设置为 f1,使其成为下一个绘图的目标。然后创建一个散点图。

figure(f1);
scatter((1:20),rand(1,20));

Two figure windows. Figure 1 is in the foreground and contains a scatter plot with some data.

输入参数

全部折叠

目标图窗,指定为 Figure 对象。

目标图窗编号,指定为整数标量值。如果您指定此参量,MATLAB 将搜索 Number 属性等于 n 的现有图窗。如果不存在具有该属性值的图窗,MATLAB 将创建一个新图窗并将其 Number 属性设置为 n。默认情况下,Number 属性值显示在图窗的标题中。

数据类型: double

名称-值参数

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

示例: figure(Color="white") 创建具有白色背景的图窗。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: figure("Color","white") 创建具有白色背景的图窗。

注意

此处所列的属性只是一部分。有关完整列表,请参阅 Figure 属性

图窗的名称,指定为字符向量或字符串标量。

示例: figure('Name','Results') 将图窗的名称设置为 'Results'

默认情况下,名称为 'Figure n',其中 n 是整数。如果您指定 Name 属性,图窗的标题将变为 'Figure n: name'。如果您希望只显示 Name 值,请将 IntegerHandleNumberTitle 设置为 'off'

背景颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。如果指定 'none',背景色将在屏幕上显示为黑色,但如果您打印图窗,则会将图窗窗口视为透明而打印背景。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

以下是 MATLAB 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。

RGB 三元组十六进制颜色代码外观
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

数据类型: double | char

可绘制区域的位置和大小,指定为 [left bottom width height] 形式的向量。此区域不包括图窗边框、标题栏、菜单栏和工具栏。

此表介绍 Position 向量中的每个元素。

元素描述
left从主画面左边缘到窗口的内部左边缘的距离。在具有多个监视器的系统上,此值可能为负数。

如果图窗已停靠,则此值相对于 MATLAB 桌面中的“图窗”面板。
bottom从主画面下边缘到窗口的内部下边缘的距离。在具有多个监视器的系统上,此值可能为负数。

如果图窗已停靠,则此值相对于 MATLAB 桌面中的“图窗”面板。
widthfigure 的左右内部边缘之间的距离。
height窗口的上下内部边缘之间的距离。

所有测量值都采用 Units 属性指定的单位。

图窗停靠时不能指定图窗的 Position 属性。

MATLAB Online™ 中,Position 向量的 bottomleft 元素被忽略。

要放置包括边框、标题栏、菜单栏和工具栏在内的整个窗口,请使用 OuterPosition 属性。

注意

Windows® 操作系统会强制应用最小窗口宽度和最大窗口大小。如果您指定的图窗尺寸超出这些限制,将按照这些限制而不是指定的尺寸显示图窗。

测量单位,指定为下表中的值之一。

单位值描述
'pixels'(默认值)

像素。

从 R2015b 开始,以像素为单位的距离不再依赖 Windows 和 Macintosh 系统上的系统分辨率:

  • 在 Windows 系统上,一个像素是 1/96 英寸。

  • Macintosh 系统上,一个像素是 1/72 英寸。

在 Linux® 系统上,一个像素的大小由系统分辨率确定。

'normalized'这些单位依据父容器进行归一化。容器的左下角映射到 (0,0),右上角映射到 (1,1)
'inches'英寸。
'centimeters'厘米。
'points'磅。1 磅等于 1/72 英寸。
'characters'

这些单位基于图形根对象的默认 uicontrol 字体:

  • 字符宽度 = 字母 x 的宽度。

  • 字符高度 = 两个文本行的基线之间的距离。

要访问默认的 uicontrol 字体,请使用 get(groot,'defaultuicontrolFontName')set(groot,'defaultuicontrolFontName')

MATLAB 从父对象的左下角测量所有单位。

此属性会影响 Position 属性。如果更改 Units 属性,请考虑在完成计算后将其值还原为默认值,以免影响采用默认值的其他函数。

指定 UnitsPosition 属性的顺序具有以下影响:

  • 如果您在 Position 属性之前指定 Units,则 MATLAB 会使用您指定的单位来设置 Position

  • 如果您在 Position 属性之后指定 Units 属性,则 MATLAB 会使用默认的 Units 来设置 position。然后,MATLAB 将 Position 值转换为以您指定的单位表示的等价值。

详细信息

全部折叠

当前图窗

当前图窗是图形命令(如 axescolormap)的目标。通常情况下,它是最后创建的或最后用鼠标点击的图窗。gcf 命令返回当前图窗。

提示

  • 使用图形根对象为其他类型的对象设置根级别的默认值。例如,将以后所有图窗的默认颜色图设置为 summer 颜色图。

    set(groot,'DefaultFigureColormap',summer)
    要将属性恢复为其原始 MATLAB 默认值,请使用 'remove' 关键字。
    set(groot,'DefaultFigureColormap','remove')
    有关设置默认值的详细信息,请参阅默认属性值

版本历史记录

在 R2006a 之前推出

另请参阅

函数

属性