2.axis函数
在Matlab中,axis函数用于根据需要适当调整坐标轴,该函数调用格式有以下几种:
1.axis([xmin xmax ymin ymax]):此函数将所画的x轴的大小范围限定在{xmin,xmax}之间,y轴的大小范围限定在{ymin,ymax}之间。
2.axis(str):将坐标轴的状态设定为字符串参数str所指的状态。参数str是由一对单引号所包起来的字符串,它表明了将坐标轴调整为哪一种状态。各种常用字符串的含义如下图所示:
3.variable=axis:变量variable保存的是一个向量值,显然这个向量值能够以axis(variable)的形式应用于设定坐标轴的大小范围。
4.[s1 s2 s3 ]=axis(‘state’):将当前所使用的坐标轴的状态存储到向量[s1 s2 s3]中。s1说明是否自动设定坐标轴的范围,取值为‘auto’或‘manual’;s2说明是否关闭坐标轴,取值为‘on’或者‘off’;s3说明所使用的坐标轴的种类,取值为‘xy’或‘ij’.
命令 | 描述 |
axis([xmin xmax ymin ymax]) | 表示按照用户给出的x轴和y轴的最大、最小值选择坐标系 |
axis(‘auto’) | 表示自动设置坐标系:xmin=minx(x);xmax=max(x);ymin=min(y);ymax=max(y) |
axis(‘xy’) | 表示使用笛卡尔坐标系 |
axis(‘ij’) | 表示使用matrix坐标系,即坐标原点在左上方,x坐标从左向右增大,y坐标从上向下增大 |
axis(‘square’): | 表示将当前图形设置为正方形图形 |
axis(‘equal’) | 表示将x、y坐标轴的单位刻度设置为相等 |
axis(‘normal’) | 表示关闭axis equal 和axis square 命令 |
axis(‘off’) | 表示关闭网络线、xy坐标的用label命令所加的注释,但保留用图形中text命令和gtext命令所添加的文本说明 |
axis(‘on’) | 表示打开网络线、xy坐标的用label命令所加的注释 |
例子:利用axis函数调整y=cosx的坐标轴范围。
例子:利用axis函数绘制一个圆
3.grid函数与legend函数
grid函数用于给二维或三维图形的坐标面添加网格线。legend函数用于在图形上添加图例。该命令会在有多种图形对象类型(线条图、条形图、饼形图等)的窗口中显示一个图例。对于每一线条,图例会在用户 给定的文字标签旁显示线条的线型、标记符号和颜色等。这些函数的用法如下:
grid on:表示在当前的坐标轴添加网格线;
grid off:表示从当前的坐标轴中去掉网格线;
grid:表示转换分隔线的显示与否的状态;
legend(‘string1’,‘string2’,…,pos):表示用指定的文字string在当前坐标轴中对所给数据的每一部分显示一个图例,在指定的位置pos放置这些图例;
legend(‘off’):清除图例;
legend(‘hide’):隐藏图例;
legend(‘show’):显示图例
例子:图形标定函数legend使用示例;
4.fill函数与hold函数:
在Matlab中,fill函数用于对一个封闭的图形进行填充处理。hold函数用于对当前的绘图叠加。这些函数的调用方法如下:
fill(x,y,d):用d指定颜色来填充建立一个多变形。其中d为颜色映像索引向量或矩阵或廧字符(‘r’,‘g’,‘b’,‘c’,‘m’,‘y’,‘w’,‘k’).若d是列向量,则length(d)必须等于size(x,2)与size(y,2);若d为行向量,则length(d)必须等于size(x,1)与size(y,1).
fill(x,y,ColorSpec):用ColorSpec指定的颜色填充由x与y定义的多边形,其中ColorSpec可以为颜色字符:‘r’,‘g’,‘b’,‘c’,‘m’,‘y’,‘w’,‘k’。
fill(x1,y1,c1,x2,y2,c2):一次定义多个要填充的二维区域。
fill(…,‘PropertyName’,PropertyTalue):允许用户定义组成fill多边形的patch图形对象某个属性名称的属性值。
h=fill(…):返回patch图形对象句柄值的向量,并且每一个patch对象对应一个句柄值。
hold:可以切换当前的绘图叠加模式。
hold on/hold off:表示明确规定当前绘图窗口叠加绘图模式的开关状态。
hold all:不但实现hold on的功能,使得当前绘图窗口的叠加绘图模式打开,而且使新的绘图指令依然循环初始设置的颜色循环序和线型循环序。
例子:
5.text函数与gtext函数:
text函数用于在当前轴中创建text对象,text函数是创建text图形句柄的低级函数,可用该函数在图形中指定的位置上显示字符串。gtext函数用于在当前二维图形中用鼠标放置文字,当光标进入图形窗口时,会变成一个大十字,表明系统正等待用户的动作。这些函数的用法如下:
text(x,y,‘string’):表示在图形指定的位置(x,y)上显示字符串string。
text(x,y,string,option),主要功能是在图形指定坐标位置(x,y)处,写出由string所给出的字符串。坐标(x,y)的单位是由选项option决定的。
gtext(‘string’):表示当光标位于一个图形窗口内时,等待用户单击鼠标或按下键盘。若按下鼠标或键盘,则在光标的位置放置给定的字符string.
例子:
特殊的二维图形绘制;
与数值计算和符号计算相比,图形的可视化技术是数学计算人员所追求的更高级的一种技术,因为对于数值计算和符号计算来说,不管计算的结果多么准确,人们往往无法直接从大量的数据和符号中体会他们的具体含义。
1.特殊坐标系的二维图形函数
1.1.semilogx函数用于对x轴按对数比例绘数据图,其他与plot函数类似。
例子:
1.2.semilogy函数
semilogy函数与semilogx函数正好相反,它是对y轴按对数比例绘画数据图,
1.3.loglog函数
loglog函数用于对x轴和y轴都按对数比例绘数据图。
1.4polar函数
polar函数用于绘制极坐标系下的二维图形,调用格式为polar(theta,rho,s):其中,theta为弧度表示的角度向量,rho是相应的幅向量,s为图形属性设置选项。
polar函数的用法举例:
1.5.plotyy函数
在进行数值比较过程中经常会遇到双纵坐标(即双y轴坐标系)显示的要求,解决该问题,可调用plotyy函数。完整调用格式为:
plotyy(x1,y1,x2,y2,fun1,fun2):该命令将以fun1方式绘制(x1,y1);以fun2方式绘制(x2,y2)。其中,若默认参数fun1和fun2时,则以plot方式绘制图形;默认参数fun2时,则以fun1方式绘制图形(fun1可以为plot、semilogx、semilogy等)
利用plotyy函数产生两个y轴,来指定同一数据的两种不同显示形式。
参考:《MATLAB GUI程序设计》王广、邢林芳