Matlab中zlim函数的使用

目录

语法

说明

​示例

设置 z 坐标轴范围

使用半自动 z 坐标轴范围

设置特定坐标区的 z 坐标轴范围

保持当前 z 坐标轴范围

返回 z 坐标轴范围


        zlim函数是设置或查询 z 坐标轴范围。

语法

zlim(limits)
zl = zlim
zlim auto
zlim manual
m = zlim('mode')
___ = zlim(ax,___)

limits - 最小和最大范围

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

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

ax - 目标坐标区

        目标坐标区,指定为 Axes 对象或 Axes 对象数组。如果不指定此参数,则 zlim 会设置当前坐标区的范围。

zl - 当前范围

        当前范围,返回为 [zmin zmax] 形式的一个二元素向量。查询范围时将返回对应 Axes 对象的 ZLim 属性值。

m - 当前范围模式

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

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

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

说明


        zlim(limits) 设置当前坐标区的 z 坐标轴范围。将 limits 指定为 [zmin zmax] 形式的二元素向量,其中 zmax 大于 zmin。

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

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

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

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

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

​示例

设置 z 坐标轴范围

        绘制一个曲面,并将 z 坐标轴范围设置为从 -5 至 5。

[X,Y,Z] = peaks;
surf(X,Y,Z);
zlim([-5 5])

使用半自动 z 坐标轴范围

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

[X,Y,Z] = peaks;
mesh(X,Y,Z)
zlim([0 inf])

设置特定坐标区的 z 坐标轴范围

        从 R2019b 开始,可以使用 tiledlayout 和 nexttile 函数显示分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。在每个坐标区中绘制数据。然后通过将 ax2 指定为 zlim 的第一个输入参数,设置底部图的 z 坐标轴范围。

[X,Y,Z] = peaks;
tiledlayout(2,1)
ax1 = nexttile;
surf(X,Y,Z)

ax2 = nexttile;
surf(X,Y,Z)
zlim(ax2,[-5 5])

保持当前 z 坐标轴范围

        当将更多绘图添加到坐标区时,使用手动模式可保持当前 z 坐标轴范围。首先创建一个三维散点图。

theta = linspace(0,2*pi);
X = cos(theta);
Y = sin(theta);
Z = theta;
scatter3(X,Y,Z)

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

zlim manual
hold on 
Znew = 5*theta;
scatter3(X,Y,Znew)
hold off

        z 坐标轴范围不会更新以包含该新绘图。通过将模式设置为自动来重新切换回自动更新的范围。

zlim auto

返回 z 坐标轴范围

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

x = randn(50,1);
y = randn(50,1);
z = randn(50,1);
scatter3(x,y,z)

zl = zlim
zl = 1×2

    -3     3

猜你喜欢

转载自blog.csdn.net/jk_101/article/details/110955085
今日推荐