MATLAB axis()函数的用法
MATLAB 的绘图函数可根据要绘制的曲线数据的范围自动选择合适的坐标系,使得曲线尽可能清晰地显示出来。所以,一般情况下用户不必自己选择绘图坐标系。
但是有些图形,如果用户感觉自动选择的坐标系不合适,则可以利用函数 axis() 选择新的坐标系。
axis() 函数用于控制坐标轴的显示、刻度、长度等特征,如下表所示,为 axis() 函数常用的调用格式及说明。
【实例】调整坐标系。MATLAB 程序如下:

图 1 调整坐标系
但是有些图形,如果用户感觉自动选择的坐标系不合适,则可以利用函数 axis() 选择新的坐标系。
axis() 函数用于控制坐标轴的显示、刻度、长度等特征,如下表所示,为 axis() 函数常用的调用格式及说明。
调用格式 | 说明 |
---|---|
axis([xmin xmax ymin ymax]) | 设置当前坐标轴的 x 轴与 y 轴的范围 |
axis([xmin xmax ymin ymax zmin zmax]) | 设置当前坐标轴的 x 轴、y 轴与 z 轴的范围 |
axis([xmin xmax ymin ymax zmin zmax cmin cmax]) | 设置当前坐标轴的 x 轴、y 轴与 z 轴的范围以及当前颜色刻度范围 |
v = axis | 返回一包含 x 轴、y 轴与 z 轴的刻度因子的行向量,其中 v 为一个四维或六维向量,这取决于当前坐标系为二维还是三维的 |
axis auto | 自动计算当前轴的范围,该函数也可针对某一个具体坐标轴使用,例如:auto x 为自动计算 x 轴的范围;auto yz 为自动计算 y 轴与 z 轴的范围 |
axis manual | 把坐标固定在当前的范围。这样,若保持状态(hold)为 on,后面的图形仍用相同界限 |
axis tight | 把坐标轴的范围定为数据的范围,即将三个方向上的纵横比设为同一个值 |
axis fill | 该函数用于将坐标轴的取值范围分别设置为绘图所用数据在相应方向上的最大、最小值 |
axis ij | 将二维图形的坐标原点设置在图形窗口的左上角,坐标轴 i 垂直向下,坐标轴 j 水平向右 |
axis xy | 使用笛卡尔坐标系 |
axis equal | 设置坐标轴的纵横比,使在每个方向的数据单位都相同,其中 x 轴、y 轴与 z 轴将根据所给数据在各个方向的数据单位自动调整其纵横比 |
axis image | 效果与函数 axis equal 相同,只是图形区域刚好紧紧包围图像数据 |
axis square | 设置当前图形为正方形(或立方体形),系统将调整 x 轴、y 轴与 z 轴,使它们有相同的长度,同时相应地自动调整数据单位之间的增加量 |
axis normal | 自动调整坐标轴的纵横比,还有用于填充图形区域的、显示于坐标轴上的数据单位的纵横比 |
axis vis3d | 该命令将冻结坐标系此时的状态,以便进行旋转 |
axis off | 关闭所用坐标轴上的标记、格栅和单位标记,但保留由 text 和 gtext 设置的对象 |
axis on | 显示坐标轴上的标记、单位和格栅 |
[mode,visibility,direction] = axis('state') | 返回表明当前坐标轴设置属性的三个参数 mode、visibility、direction,它们的可能取值见下表 |
参数 | 可能取值 |
---|---|
mode | auto 或 manual |
visibility | on 或 off |
direction | xy 或 ij |
【实例】调整坐标系。MATLAB 程序如下:
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> x = 0:pi/100:2*pi; % 创建由0~2π的线性分隔值组成的向量x,元素间隔为π/100 >> y = cos(x).^5; % 定义以向量x为自变量的函数表达式y >> plot(x,y) % 自动显示坐标系,如图 1(a)所示 >> axis([0 pi -2 2]) % 调整坐标系后的图形,如图 1(b)所示运行结果如下图所示:

图 1 调整坐标系