《计算机软件及应用MATLAP绘图.pptx》由会员分享,可在线阅读,更多相关《计算机软件及应用MATLAP绘图.pptx(73页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、04:4814.1 二维曲线的绘制基本绘图命令plot命令是MATLAB中最简单而且使用最广泛的一个绘图命令,用来绘制二维曲线。语法:plot(x)%绘制以x为纵坐标的二维曲线plot(x,y)%绘制以x为横坐标y为纵坐标的二维曲线说明:x和y可以是向量或矩阵。第1页/共73页04:4821.plot(x)绘制x向量曲线当x是长度为n的数值向量时纵坐标:向量x横坐标1:n(系统自动生成)。plot(x)命令顺序地用直线段连接各点,生成一条折线,当向量的元素充分多时,可以得到一条光滑的曲线。第2页/共73页04:483例4.1 用plot(x)命令画直线x1=123plot(x1)x2=010p
2、lot(x2)(b)x2曲线图4.1(a)x1曲线第3页/共73页04:4842.plot(x,y)绘制向量x和y的曲线当参数x和y都是长度为n的向量,x、y的长度必须相等,plot(x,y)命令绘制纵坐标为向量y横坐标为向量x的曲线。例4.2绘制正弦曲线y=sin(x)和方波曲线,如图4.2所示。x1=0:0.1:2*pi;y1=sin(x1);plot(x1,y1)x2=011223;y2=110011;plot(x2,y2)axis(0402)图图4.2(a)正弦曲线正弦曲线 (b)方波曲线方波曲线第4页/共73页04:4853.plot(x)绘制矩阵x的曲线当x是一个mn的矩阵,plo
3、t(x)命令为矩阵的每一列画出一条线,共n条曲线,各曲线自动用不同颜色显示;每条线的横坐标为向量1:m。例4.3矩阵图形的绘制,如图4.3所示。x1=123;456;plot(x1)x2=peaks;%产生一个49*49的矩阵plot(x2)图图4.3(a)x1曲线曲线 (b)x2曲线曲线第5页/共73页04:4864.plot(x,y)绘制混合式曲线当plot(x,y)中x和y是向量或矩阵时,有几种情况:若x是向量,y是矩阵,x的长度=y的行或列数。x长度=y行数,则向量x与矩阵y的每列向量对应画一条曲线;x的长度=y的列数相等,向量x与y的每行向量画一条曲线,若y是方阵,则向量x与矩阵y的
4、每列向量画一条曲线;若x是矩阵,y是向量,则y的长度=x的行数或列数,绘制的方法与前一种相似;若x和y都是矩阵,则大小必须相同,矩阵x的每列和y的每列画一条曲线。第6页/共73页04:487例4.4 混合式图形的绘制x1=123;y1=123;456plot(x1,y1)%长度与列相等y2=12;34;56plot(x1,y2)%长度与行相等plot(y1,x1)plot(y2,x1)x2=111;222plot(x2,y1)%长度与行列相等第7页/共73页04:4885.plot(z)绘制复向量曲线plot(z)中的参数z为复向量时,plot(z)和plot(real(z),imag(z)是
5、等效的,以实部为横坐标,虚部为纵坐标。例4.4续下面程序画出的曲线和图4.4(e)中的相同。z1=x2+i*y1plot(z1)%以实部为横坐标,虚部为纵坐标第8页/共73页04:4896.plot(x1,y1,x2,y2,)绘制多条曲线plot命令还可以同时绘制多条曲线,用多个矩阵对为参数。每一对矩阵(xi,yi)均按照前面的方式解释。例4.5绘制三条曲线,如图4.5所示。x=0:0.1:2*pi;plot(x,sin(x),x,cos(x),x,sin(3*x)%画三条曲线图4.5 三条曲线第9页/共73页04:4810绘制曲线的一般步骤P1181曲线数据准备:二维曲线,横坐标和纵坐标数据
6、变量;三维曲面,矩阵参变量和对应的函数值。2指定图形窗口和子图位置:默认时,打开FigureNo.1窗口或当前窗口、当前子图;也可以打开指定的图形窗口和子图。3设置曲线的绘制方式:线型、色彩、数据点形。4设置坐标轴:坐标的范围、刻度和坐标分格线5图形注释:图名、坐标名、图例、文字说明6着色、明暗、灯光、材质处理(仅对三维图形使用)7视点、三度(横、纵、高)比(仅对三维图形使用)8图形的精细修饰(图形句柄操作):利用对象属性值设置;利用图形窗工具条进行设置。第10页/共73页04:4811多个图形绘制方式1.指定图形窗口默认“FigureNo.1”窗口,第二次使用plot命令时覆盖。需要多个图形
7、窗口同时打开,使用figure语句。语法:figure(n)%产生新图形窗口例“figure(1)”、“figure(2)”同时打开多个图形窗口。2.同一窗口多个子图如果需要在同一个图形窗口中布置几幅独立的子图,可以在plot命令前加上subplot命令。语法:subplot(m,n,k)%使(mn)幅子图中的第k幅成为当前图第11页/共73页04:4812例4.6 用subplot命令画子图【例4.6】用subplot命令画四个子图,如图4.6所示。x=0:0.1:2*pi;subplot(2,2,1)%2*2个子图,左上方为当前图plot(x,sin(x)subplot(2,2,2)%右上
8、方为当前图plot(x,cos(x)subplot(2,2,3)%左下方为当前图plot(x,sin(3*x)subplot(2,2,4)%右下方为当前图,省略逗号plot(x,cos(3*x)图4.6 四个子图第12页/共73页04:48133.同一窗口多次叠绘语法:holdon%使当前坐标系和图形保留holdoff%使当前坐标系和图形不保留hold%在以上两个命令中切换说明:MATLAB会根据新图形的大小,重新改变坐标系的比例。第13页/共73页04:4814例4.7 叠绘【例4.7】在同一窗口画出函数sinx在区间02的曲线和cosx在区间-的曲线,如图4.7(a)所示。x1=0:0.1
9、:2*pi;plot(x1,sin(x1)holdonx2=-pi:.1:pi;plot(x2,cos(x2)图4.7(a)用hold on在同一窗口画出两条曲线 第14页/共73页04:48154.双纵坐标图语法:plotyy(x1,y1,x2,y2)%以左、右不同纵轴绘制两条曲线说明:左纵轴用于(x1,y1)数据,右纵轴用于(x2,y2)数据来绘制两条曲线。坐标轴的范围、刻度都自动产生。【例4.7续】用plotyy函数实现在同一图形窗口绘制两条曲线,如图4.7(b)所示。plotyy(x1,sin(x1),x2,cos(x2)(b)用plotyy在同一窗口画出两条曲线第15页/共73页04
10、:4816曲线的线型 颜色和数据点形颜色数据点间连线数据点形类型符号类型符号类型符号黄色黄色品品红红色色(紫紫色色)青色青色红色红色绿色绿色蓝色蓝色白色白色黑色黑色y(Yellow)m(Magenta)c(Cyan)r(Red)g(Green)b(Blue)w(White)k(Black)实线实线(默认默认)点线点线点划线点划线虚线虚线-:-.-实点标记实点标记圆圈标记圆圈标记叉号形叉号形十字形十字形星号标记星号标记方块标记方块标记钻石形标记钻石形标记向下的三角形标记向下的三角形标记向上的三角形标记向上的三角形标记向左的三角形标记向左的三角形标记向右的三角形标记向右的三角形标记五角星标记五角星
11、标记六连形标记六连形标记.ox+*sdvph表4.2 线段、颜色与数据点形a five-pointed star第16页/共73页04:4817例4.8 线段类型、颜色和数据点【例4.8】用不同线段类型、颜色和数据点形画出sin(x)和cos(x)曲线,如图4.8所示。x=0:0.1:2*pi;plot(x,sin(x),r-.)%用红色点划线画出曲线holdonplot(x,cos(x),b:o)%用蓝色圆圈画出曲线,用点线连接图4.8在同一窗口画出两条曲线 第17页/共73页04:4818设置坐标轴和文字标注1.坐标轴的控制set(gca,xtick,0:0.5:4)set(gca,xti
12、ck,0:0.5:4)plot命令根据所给的坐标点自动地确定坐标轴的范围,用坐标控制命令axis命令含义命令含义axis auto使用默认设置使用默认设置axis equal纵、横轴采用等长刻度纵、横轴采用等长刻度axis manual使当前坐标范围不变使当前坐标范围不变axis fill在在manual方方式式下下起起作作用用,使使坐坐标标充满整个绘图区充满整个绘图区axis off取消轴背景取消轴背景axis image纵纵、横横轴轴采采用用等等长长刻刻度度,且且坐坐标标框紧贴数据范围框紧贴数据范围axis on使用轴背景使用轴背景axis normal默认矩形坐标系默认矩形坐标系axis
13、 ij矩阵式坐标,原点在左上方矩阵式坐标,原点在左上方axis square产生正方形坐标系产生正方形坐标系axis xy普通直角坐标,原点在左下方普通直角坐标,原点在左下方axis tight把数据范围直接设为坐标范围把数据范围直接设为坐标范围axis(xmin,xmax,ymin,ymax)设设 定定 坐坐 标标 范范 围围,必必 须须 满满 足足xminxmax,yminline1width=get(h_line1,linewidth)%获取曲线宽度set(h_line1,linewidth,3)%设置曲线宽度h_title=get(gca,title)%获取标题句柄titlefonts
14、ize=get(h_title_fontsize,fontsize)%获取字体大小set(h_title_fontsize,fontsize,13)%设置题字体大小h_text1=text(pi,0,downarrow);%画向下箭头text1pos=get(h_text1,position)%获取文字位置h_text2=text(text1pos(1,1),text1pos(1,2)+0.025,exp(-x)*sin(x)=0);%设置文字位置set(h_text1,fontsize,13,color,red)%设置字体大小、颜色set(h_text2,fontsize,13,color,
15、red)第60页/共73页04:4861示例x=0:0.1:2*pi;y=sin(x).*exp(-x);h_fig=figure(1)h_line=plot(x,y)h_title=title(曲线)h_text=gtext(leftarrowsin(x).*exp(-x)set(h_fig,color,yellow)set(h_line,linewidth,8)set(h_title,fontsize,20,color,red)set(h_text,fontsize,22,color,red)set(gca,xgrid,on)set(gca,gridlinestyle,-)第61页/共73
16、页04:48624.7 用户图形界面设计可视化的界面环境打开可视化界面环境的方法有以下几种:(1)选择菜单“File”“New”“GUI”命令;(2)在命令窗口输入“Guide”命令或输入“GuideFilename”就会出现Guide快速开始界面。如图4.44所示。图图4.44 Guide快速开始界面快速开始界面第62页/共73页04:4863Guide快速开始界面:空白的可视化图形文件:“BlankGUI(Default)”具有控件或坐标轴、菜单等的界面:“BlankGUI(Default)”下面的“GUIwithUicontrols”等选项 M 文件编辑器 图形对象面板 界面编辑面板 对
17、象 浏览器 属性 编辑器 菜单 编辑器 对象对 齐工具 图4.45 可视化界面环境 第63页/共73页04:4864菜单1.菜单编辑器“Tools”“MenuEditor”或单击工具栏“MenuEditor”按钮,就会出现菜单编辑器窗口,如图4.46所示。图4.46 菜单编辑器第64页/共73页04:4865【例4.31】【例4.31】使用菜单编辑器创建菜单。从头开始新建菜单,如图4.47(a);如果在已存在的图形窗口中创建菜单,新建的菜单从最右边添加,如图4.47(b)。图图4.47(a)在新窗口创建菜单在新窗口创建菜单 (b)在已建的窗口创建菜单在已建的窗口创建菜单双击找到双击找到menu
18、barmenubar属性属性第65页/共73页04:4866控件1.常用控件控件名PropertyName功能按钮按钮PushButton最最常常用用的的控控件件,用用于于响响应应用用户户的的鼠鼠标标单单击击,按按钮钮上上有有说说明明文文字字说说明明其其作作用。用。切换按钮切换按钮ToggleButton当单击时会凹凸状态切换。当单击时会凹凸状态切换。单选按钮单选按钮RadioButton当当单单击击时时会会用用黑黑白白点点切切换换,总总是是成成组组出出现现,多多个个单单选选按按钮钮互互斥斥,一一组组中中只有一个被选中。只有一个被选中。复选框复选框CheckBox当当单单击击时时会会用用切切换
19、换,有有选选中中、不不选选中中和和不不确确定定等等状状态态,总总是是成成组组出出现现,多个复选框可同时选用。多个复选框可同时选用。文本框文本框EditText凹形方框,可随意输入和编辑单行和多行文字,并显示出来。凹形方框,可随意输入和编辑单行和多行文字,并显示出来。静态文本框静态文本框StaticText用于显示文字信息,但不接受输入。用于显示文字信息,但不接受输入。滚动条滚动条Slider可可以以用用图图示示的的方方式式显显示示在在一一个个范范围围内内数数值值的的大大概概值值范范围围,用用户户可可以以移移动动滚动条改变数值。滚动条改变数值。框架框架Frame将一组控件围在框架中,用于装饰界面
20、。将一组控件围在框架中,用于装饰界面。列表框列表框ListBox显示下拉文字列表,用户可以从列表中选择一项和多项。显示下拉文字列表,用户可以从列表中选择一项和多项。弹出式菜单弹出式菜单PopupMenu相当于文本框和列表框的组合,用户可以从下拉列表中选择。相当于文本框和列表框的组合,用户可以从下拉列表中选择。坐标轴坐标轴Axes用于绘制坐标轴。用于绘制坐标轴。面板面板Panel作为面板放置其他控件的容器作为面板放置其他控件的容器按钮组按钮组Button Group用于将用于将RadioButton、CheckBox等分组,作为容器等分组,作为容器ActiveX控件控件ActiveX Contr
21、ol可以用于添加其他应用程序的可以用于添加其他应用程序的ActiveX控件控件表4.12 控件的功能第66页/共73页04:48672.控件的创建控件的创建可以在可视化界面环境中创建,也可以使用MATLAB命令用创建句柄对象的方法来创建。(1)在可视化界面环境中创建控件选中控件拖放即可,如图4.48所示为各种控件的显示。(2)用unicontrol命令创建控件语法:h_control=uicontrol(h_Parent,PropertyName,ProperValue,)图4.48 可视化的界面环境 第67页/共73页04:48683.控件的常用属性创建控件以后,需要对控件的各种属性进行设置
22、,大部分控件都具有以下属性:(1)string属性:用于显示在控件上的字符串,起说明或提示作用。(2)callback属性:回调函数,和菜单的一样。(3)enable属性:表示该控件是否有效,如果“on”则表示有效,如果“off”则表示无效。(4)tooltipstring属性:当鼠标放在控件上时显示提示信息,为字符串。(5)字体属性:包括fontname、fontsize等。(6)interruptible属性:指定当前回调函数在执行时是否允许中断,去执行其它函数。第68页/共73页04:48694.7对象对齐工具、属性编辑器和对象浏览器在工具栏可按钮分别打开菜单打开菜单“Tools”“Al
23、ignObjects”打开对象对齐工具菜单“View”“ObjectBrowser”打开对象浏览器菜单“View”“PropertyInspector”打开属性编辑器,第69页/共73页04:4870回调函数实现GUI的基本机制是对控件的Callback属性编程,如下图4.51所示创建了一个按钮,则选择按钮后,然后选择菜单“View”“ViewCallbacks”就会出现:ButtonDownFcn:当鼠标左键单击控件时执行;Callback:与控件相关的标准回调函数,当用户激活该控件(例如单击按钮)时执行;CreateFcn:当创建对象时执行;DeleteFcn:当删除对象之前执行。第70页/共73页04:4871编写程序代码在各函数中用户编写程序代码,完成各回调函数的功能。关于如何编写程序代码将在下一章介绍。图4.51 回调函数菜单项第71页/共73页04:4872示例:数据传递P305习题P183例题简易计算器第72页/共73页04:4873感谢您的观看。第73页/共73页