MATLAB 高级二维维绘图讲解 联系客服

发布时间 : 星期二 文章MATLAB 高级二维维绘图讲解更新完毕开始阅读3aaf5efdf705cc1755270985

缩放坐标轴时,坐标轴标签会随着变化以适应变化后的坐标轴位置。

例2-12 坐标轴标注函数xlabel和ylabel使用实例。利用已有数据作出北京降水量图,并标注坐标轴标签。

解:在M程序编辑器中输入以下代码:

%******************************************************** %程序:EX212.M

%功能:1997-2006年北京年平均降水量

%******************************************************** x=[1997:1:2006];

y=[1.45 0.91 2.3 0.86 1.46 0.95 1.0 0.96 1.21 0.74]; xin=1997:0.2:2006; yin=spline(x,y,xin);

plot(x,y,'ob',xin,yin,'-.r')

title('1997年到2006年北京年平均降水量图') xlabel('\\it年份','FontSize',15) ylabel('每年降雨量','FontSize',8)

保存以上M程序文件,执行程序后得到图2-16所示的结果:

图2-17 坐标轴标签(例2-12)

2.2.4设置图形标题

MATLAB 中有专门的函数title来为图形添加标题,调用这种函数的格式是: (1)title('string')

设置当前绘图区的标题为字符串string的值。 (2)title(...,'PropertyName',PropertyValue,...)

可以在添加或设置标题的同时,设置标题的属性,如字体、颜色、加粗等。 例2-13 图形标注函数title使用实例。利用title函数为图形添加标题。 解:在命令窗口输入下面的代码

>>x=0:0.05:10;

>>y=exp(-0.2*x).*cos(x); >>plot(x,y)

>>title('\\ite^{0.2x}cos(x)','FontWeight','Bold')

执行程序后,可以得到2-18所示结果图形:

图2-18 设置图形标题(例2-13)

2.2.5在图形中显示文字

MATLAB允许用户在图形的任意位置加注一串文字。加注文字的时候,MATLAB提供了两种不同确定文字位置的操作方式:

(1)用坐标轴确定文字位置;

(2)用鼠标确定文字位置。下面分别介绍这两种不同确定文字的方式。 2.2.5.1用坐标轴确定文字位置

MATLAB允许用户在图形窗口的任意位置用低级命令书写一串字符。

该方式的格式是text(x,y,string,option),主要功能是在图形指定坐标位置(x,y)处,写出由string所给出的字符串。

坐标(x,y)的单位是由选项参数option决定的。

如果不给出该选项参数,则(x,y)坐标的单位与图中的单位是一致的。

如果选项参数取为`sc`,则(x,y)坐标表示规范化的窗口相对坐标,其变化范围为0~1,即该窗口绘图范围的左下角坐标为(0,0),右上角坐标为(1,1)。

例2-14 坐标轴标注函数text使用实例。利用text函数在y=sinx指定位置添加文字。 解:在命令窗口输入以下代码

>>x=0:pi/100:2*pi; >>y=sin(x); >>plot(x,y)

>>axis([0 2*pi -1.5 1.5]) >>line([0,2*pi],[0,0])

>>text(0.5,0.85, ' sin(x) ',’sc’) >>text(0.5*pi,0.5, ‘position’) >>text(1.5*pi, -0.5, ‘negative’)

运行程序后,可以得到如2-19所示结果图形:

图2-19带有文字说明的正弦曲线

2.2.5.2用鼠标确定位置显示文字

用text命令可以在图形的任意位置上加注文字,但是前提是必须知道其位置坐标。MATLAB也允许用户用鼠标移动的方式在图形窗口中的某一位置放置一个字符串。

用鼠标确定位置显示文字函数是gtext,利用该函数可以通过鼠标,在图形的某一位置写出由string所给出的字符串。

gtext是交互式文本框标注函数,其常用语法格式为:

(1)gtext('string')可以在鼠标点击的位置标注一个单行文本框。

(2)gtext({'string1','string2','string3',...})可以在鼠标点击位置标注一个多行文本框。 (3)gtext({'string1';'string2';'string3';...})可以在通过多次鼠标点击标注多个文本框。 例2-15 文本框标注函数gtext使用实例。利用gtext函数对y=2sinx+2cosx进行文本框标注。

解:在命令窗口输入以下代码

>>x=0:0.02*pi:2*pi;

>>y=2*sin(x)+ 2*cos(x);

>>plot(x,y,pi,sin(pi)+cos(pi),'o')

>>text(pi, 2*sin(pi)+ 2*cos(pi),['sin(\\pi)+cos(\\pi)=',num2str(sin(pi)+cos(pi))]) >>gtext({'gtext1-line1','gtext1-line2'}) >>gtext({'gtext2-1';'gtext2-2'})

执行以上程序后,可以得到如2-20所示结果图形:

图2-20 文本框标注(例2-15)

2.2.6 图形的标定和颜色条

图例是可以用来标注图形中不同颜色、线型的数据组的实际意义。用户可以通过单击插入菜单的图例(Legend)项,或者单击图形工具条的图例按钮,或者通过legend命令来添加图例以标注图形中的多组数据。

通过菜单或工具按钮的方法添加图例后,图例的各项文字被设置为data1、data2等。要达到用户自定义的设置,使用lengend函数是比较方便的。 legend函数的常用方法为:

(1)legend('string1','string2',...)添加图例,并设置各组数据的图例文字为对应位置字符串值。 (2)legend('off')清除图例; (3)legend('hide')隐藏图例; (4)legend('show')显示图例。

例2-16 图形标定函数legend使用实例。利用legend函数为y=sinx、y=cosx、y=sin2x*cosx图形添加图例。

解:在M文件编辑器输入以下代码

%******************************************************** %程序:EX216.M

%功能:为图形添加图例

%******************************************************** x=0:0.01*pi:4*pi; y1=2*sin(x); y2=cos(x);

y3=sin(2*x).*cos(x); plot(x,[y1;y2;y3]) axis([0 4*pi -2 2.5])

set(gca,'XTick',[0 pi 2*pi],'XTickLabel',{'0','pi','2pi'}) legend('2*sin(x)','cos(x)','sin(2x)cos(x)')

保存文件后,执行程序可以得到如2-21所示的图形: