本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

ylim

设置或查询 y 坐标轴范围

说明

示例

ylim(limits) 设置当前坐标区或图的 y 坐标轴范围。将 limits 指定为 [ymin ymax] 形式的二元素向量,其中 ymax 大于 ymin

示例

yl = ylim 以二元素向量形式返回当前范围。

ylim auto 设置自动模式,使坐标区确定 y 坐标轴范围。范围将跨越绘图数据范围。如果更改了范围,然后又想将它们设置回默认值,则可以使用此选项。此命令会将坐标区的 YLimMode 属性设置为 'auto'

示例

ylim manual 设置手动模式,将范围冻结在当前值。当使用 hold on 命令向坐标区添加新数据时,如果要保留当前范围,请使用此选项。此命令会将坐标区的 YLimMode 属性设置为 'manual'

m = ylim('mode') 返回当前 y 坐标轴范围模式:'auto''manual'。默认情况下,该模式为自动,除非您指定范围或将模式设置为手动。

示例

___ = ylim(target,___) 使用由 target 指定的坐标区或图,而不是当前坐标区。指定 target 作为上述任何语法的第一个输入参数。如果原始语法支持输出参数,则可以包含输出参数。模式输入应放在单引号内,例如 ylim(target,'auto')

示例

全部折叠

绘制一个线条,并将 y 坐标轴范围设置为从 -2 至 2。

x = linspace(0,10);
y = sin(x);
plot(x,y)
ylim([-2 2])

创建曲面图并仅显示大于 0 的 y 值。将最小 y 轴范围指定为 0,并由 MATLAB 选择最大范围。

[X,Y,Z] = peaks;
surf(X,Y,Z)
ylim([0 inf])

以 y 轴为日期值创建一个水平条形图。将 y 坐标轴范围设置为从 2014 年 6 月 1 日到 2014 年 6 月 10 日。

t = datetime(2014,06,1) + caldays(0:20);
y = rand(21,1);
barh(t,y)

tstart = datetime(2014,06,1);
tend = datetime(2014,06,10);
ylim([tstart tend])

创建一个包含两个子图的图窗,并将 Axes 对象赋给变量 ax1ax2。在每个子图中对相同的数据绘图。通过将 ax2 指定为 ylim 的第一个输入,设置底部子图的 y 坐标轴范围。

x = linspace(0,10,1000);
y = sin(10*x).*exp(.5*x);
ax1 = subplot(2,1,1);
plot(x,y)

ax2 = subplot(2,1,2);
plot(x,y)
ylim(ax2,[-10 10])

当将更多绘图添加到坐标区时,使用手动模式可保持当前 y 坐标轴范围。

首先,绘制一个线条。

x = linspace(0,10);
y = sin(x);
plot(x,y)

y 坐标轴范围模式设置为手动,以便范围不发生变化。使用 hold on 将第二个绘图添加到坐标区。

ylim manual
hold on
y2 = 2*sin(x);
plot(x,y2)
hold off

y 坐标轴范围不会更新以包含该新绘图。

通过将模式重置为自动来重新切换回自动更新的范围。

ylim auto

创建一个由随机数据组成的散点图。返回 y 坐标轴范围的值。

x = randn(50,1);
y = randn(50,1);
scatter(x,y)

yl =  ylim
yl = 1×2

    -2     3

输入参数

全部折叠

最小和最大范围,指定为 [ymin ymax] 形式的二元素向量,其中 ymax 大于 ymin。您可以将范围指定为数字、分类、日期时间或持续时间值。但是,您指定的值的类型必须匹配 y 轴的值的类型。

您可以指定这两个范围,也可以指定一个范围而让 MATLAB® 自动计算另一个范围。对于自动计算的最小值或最小值范围,分别使用 -infinf 来表示。

示例: ylim([0 1])

示例: ylim([-inf 1])

示例: ylim([0 inf])

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

目标坐标区或图,指定为 Axes 对象或具有 YLimits 属性的图形对象(例如 HeatmapChart 对象)。如果不指定坐标区或图,ylim 将为当前坐标区或图(由 gca 返回)设置范围。

输出参数

全部折叠

当前范围,返回为 [ymin ymax] 形式的一个二元素向量。

查询范围时将返回对应的 Axes 或图形对象的 YLimYLimits 属性值。

当前范围模式,返回为下列值之一:

  • 'auto' - 自动确定范围。

  • 'manual' - 使用手动指定的范围,这些范围不会更新以反映数据的变化。

查询 y 坐标轴范围模式时将返回对应 Axes 对象的 YLimMode 属性值。

算法

ylim 函数设置并查询与 y 坐标轴范围有关的多个坐标区属性。

  • YLim - 用于存储 y 坐标轴范围的属性。

  • YLimMode - 用于存储 y 坐标轴范围模式的属性。设置 y 坐标轴范围时,此属性更改为 'manual'

在 R2006a 之前推出