资源描述:
《MATLAB绘图与图形处理(1)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MATLAB绘图与图形处理(1)(向原书稿作者表示致敬)人们很难从一大堆原始的数据中发现它们的含义,而数据图形恰能使视觉感官直接感受到数据的许多内在本质,发现数据的内在联系。MATLAB可以表达出数据的二维,三维,甚至四维的图形。通过图形的线型,立面,色彩,光线,视角等属性的控制,可把数据的内在特征表现得淋漓尽致。下面我们分别介绍图形的命令。1二维图形1.1基本平面图形命令命令1plot功能线性二维图。在线条多于一条时,若用户没有指定使用颜色,则plot循环使用由当前坐标轴颜色顺序属性(currentaxesCo
2、lorOrderproperty)定义的颜色,以区别不同的线条。在用完上述属性值后,plot又循环使用由坐标轴线型顺序属性(axesLineStyleOrderproperty)定义的线型,以区别不同的线条。用法plot(X,Y)当X,Y均为实数向量,且为同维向量(可以不是同型向量),X=[x(i)],Y=[y(i)],则plot(X,Y)先描出点(x(i),y(i)),然后用直线依次相连;若X,Y为复数向量,则不考虑虚数部分。若X,Y均为同维同型实数矩阵,X=[X(i)],Y=[Y(i)],其中X(i),Y(i
3、)为列向量,则plot(X,Y)依次画出plot(X(i),Y(i)),矩阵有几列就有几条线;若X,Y中一个为向量,另一个为矩阵,且向量的维数等于矩阵的行数或者列数,则矩阵按向量的方向分解成几个向量,再与向量配对分别画出,矩阵可分解成几个向量就有几条线;在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。plot(Y)若Y为实数向量,Y的维数为m,则plot(Y)等价于plot(X,Y),其中x=1:m;若y为实数矩阵,则把y按列的方向分解成几个列向量,而y的行数为n,则plot(Y)等价于plot
4、(X,Y)其中x=[1;2;…;n];在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。plot(X1,Y1,X2,Y2,…),其中Xi与Yi成对出现,plot(X1,Y1,X2,Y2,…)将分别按顺序取两数据Xi与Yi进行画图。若其中仅仅有Xi或Yi是矩阵,其余的为向量,向量维数与矩阵的维数匹配,则按匹配的方向来分解矩阵,再分别将配对的向量画出。plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…)将按顺序分别画出由三参数定义Xi,Yi,LineSpeci的线条。其中参数L
5、ineSpeci指明了线条的类型,标记符号,和画线用的颜色。在plot命令中我们可以混合使用三参数和二参数的形式:plot(X1,Y1,LineSpec1,X2,Y2,X3,Y3,LineSpec3)plot(…,'PropertyName',PropertyValue,…)对所有的用plot生成的line图形对象中指定的属性进行恰当的设置。h=plot(…)返回line图形对象句柄的一列向量,一线条对应一句柄值。说明参数LineSpec功能定义线的属性。Maltab允许用户对线条定义如下的特性:1.线型表7-1
6、定义符---:-.线型实线(缺省值)划线点线点划线2.线条宽度指定线条的宽度,取值为整数(单位为像素点)3.颜色表7-2定义符R(red)G(green)b(blue)c(cyan)颜色红色绿色兰色青色定义符M(magenta)y(yellow)k(black)w(white)颜色品红黄色黑色白色4.标记类型表7-3定义符+o(字母)*.x标记类型加号小圆圈星号实点交叉号定义符d^v><标记类型棱形向上三角形向下三角形向右三角形向左三角形定义符shP标记类型正方形正六角星正五角星5.标记大小指定标记符号的大小尺寸
7、,取值为整数(单位为像素)6.标记面填充颜色指定用于填充标记符面的颜色。取值在上表。7.标记周边颜色指定标记符颜色或者是标记符(小圆圈、正方形、棱形、正五角星、正六角星和四个方向的三角形)周边线条的颜色。取值在上表。在所有的能产生线条的命令中,参数LineSepc可以定义线条的下面三个属性:线型、标记符号、颜色进行设置。对线条的上述属性的定义可用字符串来定义,如:plot(x,y,'-.or')结合x和y,画出点划线(-.),在数据点(x,y)处画出小圆圈(o),线和标记都用红色画出。其中定义符(即字符串)中的字
8、母、符号可任意组合。若没有定义符,则画图命令plot自动用缺省值进行画图。若仅仅指定了标记符,而非线型,则plot只在数据点画出标记符。如:plot(x,y,’d’)例7-1>>t=0:pi/20:2*pi;>>plot(t,t.*cos(t),'-.r*')>>holdon>>plot(exp(t/100).*sin(t-pi/2),'--mo')>>plot(sin(