维及三维图形的绘制.ppt

上传人:zhu****ei 文档编号:3527639 上传时间:2019-12-17 格式:PPT 页数:37 大小:452.50KB
返回 下载 相关 举报
维及三维图形的绘制.ppt_第1页
第1页 / 共37页
维及三维图形的绘制.ppt_第2页
第2页 / 共37页
维及三维图形的绘制.ppt_第3页
第3页 / 共37页
点击查看更多>>
资源描述
第五讲二维及三维图形的绘制,matlab绘图功能概述基本的绘图命令图形注释和可视化提高实例,matlab绘图功能概述,将大量数据变成直观的图形或图象,方便用户工作,并能发现其中的规律。强大的图形功能,是C语言,FORTRAN语言所无法比拟的,可以很方便的实现大量数据计算结果的可视化,而且可以方便的修改和编辑图形界面。matlab不但提供了供最终用户使用的高级的绘图函数,而且提供了可以通过句柄图形来进行控制的可编程的用户界面。,经常用到的MATLAB绘图函数,管理类生成类注释和特性类figure2-Dxlabel,ylabel,zlabel(3D)subplotplottext,text3(3D)zoompolartitleholdfilllegend(2D)view(3D)plotyyboxrotate3d(3D)3-Dsetplot3gridsurf,surfcaxis,axisequal,axisoffmesh,meshzcolorbar(3D)contour,contour3,contourfclabelwaterfallcolormapcylinder,二维图形绘制例1,从逻辑上思考绘制这个图形的步骤?,图形绘制的一般步骤,%绘图数据的准备x=0:pi/120:2*pi;%生成横坐标向量y1=sin(x);%计算正弦向量y2=cos(x);%计算余弦向量%选择图形窗口以及绘图区域在窗口中的位置figure(1)subplot(2,1,1)%调用基本绘图函数h=plot(x,y1,x,y2);%设置线型和数据点的属性set(h,linewidth,2,linestyle,-;-.)%设置坐标轴的区间、刻度以及网格线axis(02*pi-1.21.2),Matlab基本二维绘图命令,画点画线画圆函数相对于另一函数的图形绘制曲线族的绘制在一个图形用户界面中绘制多个函数图形,画点,在(2,4)坐标处加一红色星号,其语句为:plot(2,4,r*),画线,用默认线型(实线)及默认颜色(蓝色)画一条从(0,0)到(1,2)的直线plot(01,02)如何画n条互不相连的线段,例如要求在x=2,4,6,8处画4条从y=0到y=cos(x/20)的垂直线。程序如下:x=2:2:8;plot(x;x,zeros(1,length(x);cos(pi*x/20),k),关于画线的一些简单讨论,Matlab会自动标出轴线刻度axis(xminxmaxyminymax)语句对轴线进行调整得到轴的边界值的语句为v=axis,画圆,在笛卡儿坐标系中画一个半径为r,圆心坐标为(a,b)的圆,首先应进行如下坐标变换x=a+rcos()y=b+rsin()设则画圆的程序如下:theta=linspace(0,2*pi);plot(1+0.5*cos(theta),2+0.5*sin(theta),axisequal命令使两坐标轴的刻度单位相同,如何画6个同心圆,要求:圆心在(1,2)初始半径为0.5,半径增量为0.25theta=linspace(0,2*pi,50);rad=0.5:0.25:1.75;x=1+cos(theta)*rad;y=2+sin(theta)*rad;plot(x,y,k,1,2,k+)axisequal,曲线族的绘制,matlab允许用向量表示一个轴,用矩阵表示另一个轴,并根据矩阵的行和列与向量长度的匹配情况画出向量对匹配的行或列的曲线图。画抛物线族的情况如下:meshgrid函数的用法说明如下如果s=s1s2s3s4t=t1t2t3则命令:uv=meshgrid(s,t)将生成两个(34)阶矩阵:程序如下:x=-5:0.2:5;a=1:5;xx,aa=meshgrid(x.2,a.2);plot(x,aa-xx,k),在一个图形用户界面中绘制多个函数图形,考虑如下三个函数方法1x=linspace(0,3.5)plot(x,0.1*x.2;cos(x).2;exp(-0.3*x),k),在一个图形用户界面中绘制多个函数图形,方法2x=linspace(0,3.5)plot(x,0.1*x.2,k,x,cos(x).2,k,x,exp(-0.3*x),k)方法3x=linspace(0,3.5)plot(x,0.1*x.2,k)holdon%保持图形窗口不变,在图形中添加新的图形对象plot(x,cos(x).2,k)plot(x,exp(-0.3*x),k),图形注释和可视化提高,坐标轴和曲线的标注、图形标题和文本填充区域希腊字母、数学符号、下标和上标轴、曲线和文本属性的改变NOTE:相关内容和表格可以参考Matlab原理与工程应用一书高会生等译,电子工业出版社,在学校超星图书馆网站上可下载,坐标轴和曲线的标注、图形标题和文本,用于标注x轴、y轴及添加图形标题的函数分别为xlabel(s),ylabel(s),title(s),其中s为字符串在图形窗口中任意位置放置文本的函数为text(x,y,s),其中x,y为放置字符串s的位置的坐标程序:x=0:0.05:6;plot(x,cos(x),k,x,1./cosh(x),k,4.734.73,-11,k)xlabel(x)ylabel(valueoffunction)title(visulizationoftwointersectingcurves)text(4.8,-0.1,x=4.73)text(2.1,0.3,1/cosh(x)text(1.2,-.4,cos(x),legend函数的使用,legend函数的使用,首先legend函数是另一种标注曲线的方法。语句格式为legend(s1,s2,sn,Location,p)其中s1,s2等为每条曲线包含字符数字的标识符号,按给出的顺序显示在图注框中。Location后为关键字。表明其后的字符串将给出图注框所处的位置。P=North,NorthEast总共8个位置每个figure或subplot中仅可使用一个legend函数。图注周围边框的显示或关闭由函数legend(boxon)或legend(boxoff)控制。实现程序如下:x=0:0.05:6;plot(x,cos(x),k-,x,1./cosh(x),k-)legend(cos(x),1/cosh(x),Location,SouthWest),填充区域,填充区域,fill(x,y,c)其中x,y是表示构成封闭多边形线段端点的同阶次矩阵。字符串c表是填充颜色的字符实现上图的程序如下:x=0:0.05:6;plot(x,cos(x),k,x,1./cosh(x),k-,4.734.73,-11,k)xlabel(x);ylabel(valueoffunction);title(visulizationoftwointersectingcurves);text(4.8,-0.1,x=4.73)legend(cos(x),1/cosh(x),Location,SouthWest)xn=linspace(0,4.73,50);holdonfill(xnfliplr(xn),1./cosh(xn)fliplr(cos(xn),c);,希腊字母、数学符号、下标和上标,希腊字母、数学符号、下标和上标,Matlab已经内置了一个相当不错的Tex转换器。在所有的MatlabFigure里都可以使用大量的Tex代码来输入公式、数学符号等下标由下划线(_)生成;上标由指数运算符()生成;希腊字母的生成如表所示:先输入反斜杠(),再输入字母的拼音。大写希腊字母仅需将拼音的首字符大写即可。(参见Matlab的原理与工程应用第二版表6.5)可在字母数字字符前加入“bf”使字符变粗,加入“it”生成斜体字符。如果要恢复正常模式,可在字母数字字符前加入“rm”数学符号可在其特殊拼音前加反斜杠()来生成。一些常用符号也如表6.5中给出。常用语法是在一对单引号间放置一组相关指令。当一组符号要放置在一起时,例如在指数中显示的表达式。则可将其放在一对大括号()内。,希腊字母、数学符号、下标和上标,实现计算前面函数并标注的程序:x=linspace(1,2);beta=3;plot(x,cos(4*pi*x).*exp(-(1+x.beta),k)title(itg_rm2rmversursitxrmforitbetarm=3)ylabel(itg_rm2)xlabel(itx)text(1.2,0.08,itg_rm2rm=cos(itxrm)iterm-(1+itxbetarm),轴、曲线和文本属性的改变,Matlab能够改变图形元素的所有属性。曲线:线宽和颜色;轴标注、图形标题、添加文本和图注:字体、排列、大小、类型、字符和颜色;轴:线宽和文本属性改变曲线和文本的属性,则对于函数xlabel,ylabel,title和text可添加关键字及其数值作为这些函数的参数。xlabel(s,keyword,keywordvalue,)ylabel(s,keyword,keywordvalue,)title(s,keyword,keywordvalue,)text(x,y,s,keyword,keywordvalue,)keyword为包含关键字的字符串,keywordvalue是与关键字相对应的字符串或数值,文本位置关键字及其属性,关键字关键字的值HorizontalAlignmentLeftCenterRightVerticalAlignmentTopMiddleBottomRotation0360o或-180o180o,其它文本关键字及其属性,Linewidthnumber0(default=0.5)FontSizenumber0(default=10)FontNameCourierHelvetica(default)Times(TimesRoman)Color见表6.1第二列“FontWeightNormal(default)Bold,轴、曲线和文本属性的改变,相关程序段,x=linspace(0,6,100);hc=plot(x,cos(x),k-);holdonhch=plot(x,1./cosh(x),k-);hs1=plot(4.734.73,-11,k);xlabel(itbfx,FontSize,14,FontName,Times)ylabel(valueoffunction,FontSize,14)title(bfvisulizationoftwointersectingcurves,FontName,Courier,FontSize,14)text(4.8,-0.1,itxrm=4.73,FontName,Times,FontSize,12);a,b=legend(cos(x),1/cosh(x),Location,SouthWest);set(hc,LineWidth,4)set(hch,LineWidth,2.5)set(hs1,LineWidth,0.25,Color,b);set(b(1),FontSize,14,Color,r)set(gca,FontSize,14,LineWidth,1.5),句柄的概念,优化问题举例,考虑以下最小化问题其约束条件为:画出以上目标函数(圆)和解区间。,优化问题举例,程序段,th=0:pi/90:2*pi;fill(3.+cos(th),1.+sin(th),g)axisequalaxis(-25-54)holdonfill(04.555,-544-5,r)plot(-25,00,k,00,-54,k,1,1,k+)r=0.5:.5:3;plot(1.+cos(th)*r,1.+sin(th)*r,b)title(Bluecircles:functionminimized.Greenarea:feasibleregion,fontsize,14)xlabel(x_1,fontsize,14)ylabel(x_2,fontsize,14)set(gca,fontsize,14),三维绘图-曲面绘制函数surf(x,y,z),例题:绘制如下函数确定的曲面z(x,y)=x4+3x2+y2-2x-2y-2x2y+6其范围为-3x3,-3y13函数如下:functionx,y,z=SurfExamplex1=linspace(-3,3,15);y1=linspace(-3,13,17);x,y=meshgrid(x1,y1);z=x.4+3*x.2-2*x+6-2*y.*x.2+y.2-2*y;调用格式:x,y,z=SurfExample;surf(x,y,z),等高线图,在曲面下创建等高线图surfc(x,y,z)和meshc(x,y,z)创建不带曲面的等高线图contour(x,y,z,v)二维等高线图C,h=contour(x,y,z,v)Clabel(C,h,v)此函数对用于标注等高线contour3(x,y,z,v)三维等高线图C,h=contour3(x,y,z,v)Clabel(C,h,v)此函数对用于标注三维等高线,三维绘图举例,程序段,nn=30;neta=20;nxi=30;n=0:10;kn=(2*n+1)*pi/2;ba=1.0;eta=linspace(-1,1,neta);xi=linspace(-1,1,nxi);cn=(-1).n./(2*n+1).2./cosh(kn*ba);cnn=meshgrid(cn,xi,1);eeta=meshgrid(eta,xi,1);txz=-16/pi/pi*(cnn.*sinh(xi*kn)*cos(kn*eta);tyz=2*eeta-16/pi/pi*(cnn.*cosh(xi*kn)*sin(kn*eta);figure(1)surf(eta,xi,txz.2+tyz.2)figure(2)contour(eta,xi,txz.2+tyz.2,30),关键行语句的理解,上面第一个矩阵可由meshgrid函数产生,这里n取0-10,meshgrid(cn,xi)的执行结果便是生成xi行矩阵,每一行为cn向量,受扭矩作用矩形梁剪力图和等高线图,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!