画布的创建
语法
figure
figure(Name,Value)
f = figure(___)
figure(f)
figure(n)
说明
figure
使用默认属性值创建一个新的图窗窗口。生成的图窗为当前图窗。
figure(Name,Value)
使用一个或多个名称-值对组参数修改图窗的属性。例如,figure('Color','white')
将背景色设置为白色。
f = figure(___)
返回 Figure
对象。可使用 f
在创建图窗后查询或修改其属性。
figure(f)
将 f
指定的图窗作为当前图窗,并将其显示在其他所有图窗的上面。
figure(n)
查找 Number 属性等于 n
的图窗,并将其作为当前图窗。如果不存在具有该属性值的图窗,MATLAB® 将创建一个新图窗并将其 Number
属性设置为 n
。
画图
语法
plot(X,Y)
plot(X,Y,LineSpec)
plot(X1,Y1,...,Xn,Yn)
plot(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn)
plot(Y)
plot(Y,LineSpec)
plot(___,Name,Value)
plot(ax,___)
h = plot(___)
说明
plot(X,Y)
创建 Y
中数据对 X
中对应值的二维线图。
-
如果
X
和Y
都是向量,则它们的长度必须相同。plot
函数绘制Y
对X
的图。 -
如果
X
和Y
均为矩阵,则它们的大小必须相同。plot
函数绘制Y
的列对X
的列的图。 -
如果
X
或Y
中的一个是向量而另一个是矩阵,则矩阵的各维中必须有一维与向量的长度相等。如果矩阵的行数等于向量长度,则plot
函数绘制矩阵中的每一列对向量的图。如果矩阵的列数等于向量长度,则该函数绘制矩阵中的每一行对向量的图。如果矩阵为方阵,则该函数绘制每一列对向量的图。 -
如果
X
或Y
之一为标量,而另一个为标量或向量,则plot
函数会绘制离散点。但是,要查看这些点,您必须指定标记符号,例如plot(X,Y,'o')
。
plot(X,Y,LineSpec)
设置线型、标记符号和颜色。
plot(
绘制多个 X1,Y1
,...,Xn,Yn
)X
、Y
对组的图,所有线条都使用相同的坐标区。
plot(
设置每个线条的线型、标记符号和颜色。您可以混用 X1,Y1,LineSpec1
,...,Xn,Yn,LineSpecn
)X
、Y
、LineSpec
三元组和 X
、Y
对组:例如,plot(X1,Y1,X2,Y2,LineSpec2,X3,Y3)
。
plot(Y)
创建 Y
中数据对每个值索引的二维线图。
-
如果
Y
是向量,x 轴的刻度范围是从 1 至length(Y)
。 -
如果
Y
是矩阵,则plot
函数绘制Y
中各列对其行号的图。x 轴的刻度范围是从 1 到Y
的行数。 -
如果
Y
是复数,则plot
函数绘制Y
的虚部对Y
的实部的图,使得plot(Y)
等效于plot(real(Y),imag(Y))
。
plot(Y,LineSpec)
设置线型、标记符号和颜色。
plot(___,Name,Value)
使用一个或多个 Name,Value
对组参数指定线条属性。有关属性列表,请参阅 Line 属性。可以将此选项与前面语法中的任何输入参数组合一起使用。名称-值对组设置将应用于绘制的所有线条。
plot(ax,___)
将在由 ax
指定的坐标区中,而不是在当前坐标区 (gca
) 中创建线条。选项 ax
可以位于前面的语法中的任何输入参数组合之前。
h = plot(___)
返回由图形线条对象组成的列向量。在创建特定的图形线条后,可以使用 h
修改其属性。有关属性列表,请参阅 Line 属性。
坐标轴的设置之axis
语法
axis(limits)
axis style
axis mode
axis ydirection
axis visibility
lim = axis
[m,v,d] = axis('state')
___ = axis(ax,___)
说明
axis(limits)
指定当前坐标区的范围。以包含 4 个、6 个或 8 个元素的向量形式指定范围。
axis style
使用预定义样式设置轴范围和标尺。例如,将样式指定为 equal
以便沿着每个坐标轴使用相等的数据单位长度。
axis mode
设置 MATLAB® 是否自动选择范围。将模式指定为 manual
、auto
或半自动选项之一,例如 'auto x'
。
axis ydirection
,其中 ydirection
为 ij
,即将原点放在坐标区的左上角。y 值按从上到下的顺序逐渐增加。ydirection
的默认值为 xy
,即将原点放在左下角。y 值按从下到上的顺序逐渐增加。
axis visibility
,其中 visibility
为 off
,即关闭坐标区背景的显示。而坐标区中的绘图仍会显示。visibility
的默认值为 on
,即显示坐标区背景。
lim = axis
返回当前坐标区的 x 轴和 y 坐标轴范围。对于三维坐标区,还会返回 z 坐标轴范围。对于极坐标区,它返回 theta 轴和 r 坐标轴范围。
[
返回坐标轴范围选择、坐标区可见性和 y 轴方向的当前设置。在以后的版本中将会删除该语法。请改用坐标区的 XLimMode、YLimMode、ZLimMode、Visible 和 YDir 属性来获取这些值。m
,v
,d
] = axis('state')
___ = axis(ax,___)
使用 ax
指定的坐标区或极坐标区,而不是使用当前坐标区。指定 ax
作为上述任何语法的第一个输入参数。将字符向量类型的输入参数用单引号引起来,例如 axis(ax,'equal')
。
坐标轴标签设置之xlabel和ylabel
语法
xlabel(txt)
xlabel(target,txt)
xlabel(___,Name,Value)
t = xlabel(___)
说明
xlabel(txt)
将为 gca
命令返回的当前坐标区或图的 x 轴添加标签。重新发出 xlabel
命令会将旧标签替换为新标签。
xlabel(target,txt)
将向 target
指定的坐标区或图形添加标签。
xlabel(___,Name,Value)
使用一个或多个名称-值对组参数修改标签外观。例如,'FontSize',12
将字体大小设置为 12 磅。在所有其他输入参数之后指定名称-值对组参数。并非所有图形类型均支持修改标签外观。
t = xlabel(___)
返回用作 x 轴标签的文本对象。使用 t
可在创建标签后对其进行修改。
图例的设置之legend
语法
legend
legend(label1,...,labelN)
legend(labels)
legend(subset,___)
legend(target,___)
legend(___,'Location',lcn)
legend(___,'Orientation',ornt)
legend(___,Name,Value)
legend(bkgd)
lgd = legend(___)
legend(vsbl)
legend('off')
说明
legend
为每个绘制的数据序列创建一个带有描述性标签的图例。对于标签,图例使用数据序列的 DisplayName
属性中的文本。如果 DisplayName
属性为空,则图例使用 'dataN'
形式的标签。当您在坐标区上添加或删除数据序列时,图例会自动更新。此命令为 gca
返回的当前坐标区或图形创建图例。如果当前坐标区为空,则图例为空。如果坐标区不存在,此命令将创建坐标区。
legend(label1,...,labelN)
设置图例标签。以字符向量或字符串列表形式指定标签,例如 legend('Jan','Feb','Mar')
。
legend(labels)
使用字符向量元胞数组、字符串数组或字符矩阵设置标签,例如 legend({'Jan','Feb','Mar'})
。
legend(subset,___)
仅在图例中包括 subset
中列出的数据序列的项。subset
以图形对象向量的形式指定。您可以在指定标签之前或不指定其他输入参数的情况下指定 subset
。
legend(target,___)
使用 target
指定的坐标区、极坐标区或图形,而不是使用当前坐标区或图形。指定 target 作为第一个输入参数。
legend(___,'Location',lcn)
设置图例位置。例如,'Location','northeast'
将在坐标区的右上角放置图例。请在其他输入参数之后指定位置。
legend(___,'Orientation',ornt)
(其中 ornt
为 'horizontal'
)并排显示图例项。ornt
的默认值为 'vertical'
,即垂直堆叠图例项。
legend(___,Name,Value)
使用一个或多个名称-值对组参数来设置图例属性。设置属性时,必须使用元胞数组指定标签,例如 legend({'A','B'},'FontSize',12)
。如果您不想指定标签,请包含一个空元胞数组,例如 legend({},'FontSize',12)
。
legend(bkgd)
(其中 bkgd
为 'boxoff'
)删除图例背景和轮廓。bkgd
的默认值为 'boxon'
,即显示图例背景和轮廓。
lgd = legend(___)
返回 Legend
对象。可使用 lgd
在创建图例后查询和设置图例属性。有关属性列表,请参阅 Legend 属性。
legend(vsbl)
控制图例的可见性,其中 vsbl
为 'hide'
、'show'
或 'toggle'
。
legend('off')
删除图例。
标题的设置之title
语法
title(txt)
title(target,txt)
title(___,Name,Value)
t = title(___)
说明
title(txt)
将指定的标题添加到 gca
命令返回的坐标区或图中。重新发出 title
命令可使新标题替换旧标题。
title(target,txt)
将标题添加到 target
指定的坐标区、图例或图上。
title(___,Name,Value)
使用一个或多个名称-值对组参数修改标题外观。例如,'FontSize',12
将字体大小设置为 12 磅。在所有其他输入参数之后指定名称-值对组参数。并非所有图类型均支持修改标题外观。
t = title(___)
返回用于标题的对象。以后可以使用 t
修改标题。
箭头等标注的绘制annotation
x轴和y轴刻度设置之xticks和yticks
语法
xticks(ticks)
xt = xticks
xticks('auto')
xticks('manual')
m = xticks('mode')
___ = xticks(ax,___)
说明
xticks(ticks)
设置 x 轴刻度值,这些值是 x 轴上显示刻度线的位置。指定 ticks
为递增值向量;例如 [0 2 4 6]
。此命令作用于当前坐标区。
xt = xticks
以向量形式返回当前 x 轴刻度值。
xticks('auto')
设置自动模式,使坐标区确定 x 轴刻度值。如果您更改了刻度值,然后又想将它们设置回默认值,则可以使用此选项。
xticks('manual')
设置手动模式,将 x 轴刻度值冻结在当前值。如果您希望在调整坐标区大小或者向坐标区添加新数据时保留当前刻度值,则可以使用此选项。
m = xticks('mode')
返回当前 x 轴刻度值模式:'auto'
或 'manual'
。默认情况下,模式为自动,除非您指定刻度值或将模式更改为手动。
___ = xticks(ax,___)
使用 ax
指定的坐标区,而不是使用当前坐标区。指定 ax
作为上述任何语法的第一个输入参数。
刻度标签设置之xticklabels
语法
xticklabels(labels)
xl = xticklabels
xticklabels('auto')
xticklabels('manual')
m = xticklabels('mode')
___ = xticklabels(ax,___)
说明
xticklabels(labels)
设置当前坐标区的 x 轴刻度标签。可将 labels
指定为字符串数组或字符向量元胞数组,例如 {'January','February','March'}
。如果指定标签,则 x 轴刻度值和刻度标签不会再基于坐标区的更改而自动更新。
xl = xticklabels
返回当前坐标区的 x 轴刻度标签。
xticklabels('auto')
设置自动模式,使坐标区确定 x 轴刻度标签。如果您设置了标签,然后又想将它们设置回默认值,则可以使用此选项。
xticklabels('manual')
设置手动模式,将 x 轴刻度标签冻结在当前值。
m = xticklabels('mode')
返回 x 轴刻度标签模式的当前值:'auto'
或 'manual'
。默认情况下,该模式为自动,除非您指定刻度标签或将模式设置为手动。
___ = xticklabels(ax,___)
使用 ax
指定的坐标区,而不是使用当前坐标区。指定 ax
作为上述任何语法的第一个输入参数。
字符串拼接函数之sprintf
语法
str = sprintf(formatSpec,A1,...,An)
[str,errmsg] = sprintf(formatSpec,A1,...,An)
str = sprintf(txt)
说明
str = sprintf(formatSpec,A1,...,An)
根据 formatSpec
的列顺序设置数组 A1,...,An
中数据的格式,并将结果返回到 str
。
如果操作失败,[str,errmsg] = sprintf(formatSpec,A1,...,An)
将以字符向量形式返回一条错误消息。否则,errmsg
为空。
str = sprintf(txt)
转换 txt
中的转义字符序列,例如 \n
和 \t
。它会原样返回所有其他字符。如果 txt
包含格式化操作符(例如 %f
),则 str
将丢弃该字符以及之后的所有字符。
接着画函数之hold
子图函数之subplot
语法
subplot(m,n,p)
subplot(m,n,p,'replace')
subplot(m,n,p,'align')
subplot(m,n,p,ax)
subplot('Position',pos)
subplot(___,Name,Value)
ax = subplot(___)
subplot(ax)
说明
subplot(m,n,p)
将当前图窗划分为 m
×n
网格,并在 p
指定的位置创建坐标区。MATLAB® 按行号对子图位置进行编号。第一个子图是第一行的第一列,第二个子图是第一行的第二列,依此类推。如果指定的位置已存在坐标区,则此命令会将该坐标区设为当前坐标区。
subplot(m,n,p,
删除位置 'replace'
)p
处的现有坐标区并创建新坐标区。
subplot(m,n,p,
创建新坐标区,以便对齐图框。此选项为默认行为。'align'
)
subplot(m,n,p,ax)
将现有坐标区 ax
转换为同一图窗中的子图。
subplot(
在 'Position'
,pos)pos
指定的自定义位置创建坐标区。使用此选项可定位未与网格位置对齐的子图。指定 pos
作为 [left bottom width height]
形式的四元素向量。如果新坐标区与现有坐标区重叠,新坐标区将替换现有坐标区。
subplot(___,Name,Value)
使用一个或多个名称-值对组参数修改坐标区属性。有关属性列表,请参阅 Axes 属性。在所有其他输入参数之后设置坐标区属性。
ax = subplot(___)
返回创建的 Axes
对象。以后可以使用 ax
修改坐标区。有关属性列表,请参阅 Axes 属性。
subplot(ax)
将 ax
指定的坐标区设为父图窗的当前坐标区。如果父图窗尚不是当前图窗,此选项不会使父图窗成为当前图窗。
图中图之axes
语法
axes
axes(Name,Value)
axes(parent,Name,Value)
ax = axes(___)
axes(cax)
说明
axes
在当前图窗中创建默认的笛卡尔坐标区,并将其设置为当前坐标区。通常情况下,您不需要在绘图之前创建坐标区,因为如果不存在坐标区,图形函数会在绘图时自动创建坐标区。
axes(Name,Value)
使用一个或多个名称-值对组参数修改坐标区的外观,或控制数据的显示方式。例如,'FontSize',14
可设置坐标区文本的字体大小。有关属性列表,请参阅 Axes 属性。
axes(parent,Name,Value)
在由 parent
指定的图窗、面板或选项卡中创建坐标区,而不是在当前图窗中创建。
返回创建的 ax
= axes(___)Axes
对象。可在创建 Axes
对象后使用 ax
查询和修改对象属性。有关属性列表,请参阅 Axes 属性。
axes(cax)
将 cax
指定的坐标区或图设置为当前坐标区,并使父图窗成为焦点。此命令还将 cax
设置为图窗的 Children
属性中列出的第一个对象,并将图窗的 CurrentAxes
属性设置为 cax
。