432014秋2012级《MATLAB程序设计》实验报告班级:软件C121姓名:冯杨腾学号:125692实验四MATLAB绘图功能一、实验目的1、掌握MATLAB二维图形绘制命令及其图形控制;2、熟悉MATLAB三维图形绘制命令及其图形控制;3、熟悉特殊二维图形、三维图形的绘制方法。二、实验内容1、在同一坐标系下绘制下面三个函数在[0,40]t的图象,要求三种曲线采用不同颜色以及不同的线型,同时对每条曲线利用函数进行标注,并添加图例。源程序:t=0:1:40;y1=t;y2=sqrt(t);y3=4*pi*exp(-0.1*t).*sin(t);plot(t,y1,'b-',t,y2,'r:',t,y3,'k--');text(10,14,'y1=t');text(10,5,'y2=sqrt(t)');text(10,-5,'y3=4*pi*exp(-0.1*t).*sin(t)');legend('y1','y2','y3')运行结果:120.134sin()tytytyet442、编写程序,选择合适的步距,绘制下面函数在区间[-6,6]中的图象,并对分段的曲线进行标注,同时添加x轴和y轴的说明。sin,0(),036,3xxyxxxxx源程序:x1=-6:pi/100:0;y1=sin(x1);x2=0:0.01:3;y2=x2;x3=3:0.01:6;y3=-x3+6;plot(x1,y1,x2,y2,x3,y3);axis([-77-24]);title('分段函数曲线');text(-3*pi/2,1,'y=sin(x)');text(2,2,'y=x');text(4,2,'y=-x+6');运行结果:3、利用subplot函数在同一绘图窗口中用不同颜色和线型绘制以下两个函数在t[-2,2]范围内的图象。0.50.21222ttyye45源程序:t=-2*pi:0.1*pi:2*pi;y1=2.^(0.5*abs(t));y2=2.*exp(-0.2*t);subplot(1,2,1);title('y1=2^(0.5*abs(t))');plot(t,y1,'+r')subplot(1,2,2);title('y2=2*exp(-0.28*t)');plot(t,y2,'-b')运行结果:4、某学校有30位教师,其中教授5人,副教授8人,讲师12人,助教5人.试画出职称比例结构饼图,并强调图形的教授部分同时添加标注。源程序:x=[5,8,12,5];L=[1,0,0,0];pie(x,L);subplot(1,1,1);title('职称比例结构饼图');legend('教授','副教授','讲师','助教');运行结果:465、生成1×10维的随机数向量a,分别用红、黄、蓝、绿色绘出其连线图、脉冲图、阶梯图和条形图,并分别标出标题“连线图”、“脉冲图”、“阶梯图”、“条形图”。源程序:a=rand(1,10);subplot(2,2,1);plot(a,'r');title('连线图');subplot(2,2,2);stem(a,'y');title('脉冲图');subplot(2,2,3);stairs(a,'b');title('阶梯图');subplot(2,2,4);bar(a,'g');title('条形图');运行结果:476、使用subplot函数,把图形窗口分成两个部分,分别绘制sin2t和3cos3t曲线,t范围:0-5.要求前者用红色实线,数据点形状为五角星,有网格线,x轴加标注“x”,y轴加标注“y=sin2t”,加题目“y=sin2t的曲线”;后者用蓝色虚线,数据点形状为圆形,无网格线,x轴加标注“x”,y轴加标注“y=3cos3t”,加题目“y=3cos3t的曲线”;源程序:t=linspace(0,5,20);y=sin(2*t);subplot(1,2,1);plot(t,y,'r-p');xlabel('x')ylabel('y=sin2t')title('y=sin2t的曲线');gridony2=3*cos(3*t);subplot(1,2,2);plot(t,y2,'b:o');xlabel('x');ylabel('y=3cos3t')title('y=3cos3t的曲线')gridoff运行结果:487、绘制下列三维曲线:(1)/20/20cossin,02ttxetyettzt(2)23,01xtyttzt(1)源程序:t=0:pi/100:20*pi;x=exp(-t/20).*cos(t);y=exp(-t/20).*sin(t);z=t;plot3(x,y,z);运行结果:(2)源程序:t=0:0.01:1;x=t;y=t.^2;z=t.^3;plot3(x,y,z);运行结果:498、绘制下列曲面图,并调整三维图的视角、背景色、着色以及透视效果。(1)z=5,|x|≤5,|y|≤5(2)225(,),3,31fxyxyxy源程序:x=-3:3;y=-3:3;[X,Y]=meshgrid(x,y);Z=-5./(1+X.^2+Y.^2);surf(X,Y,Z);运行结果:509、用mesh和surf函数,绘制下面方程所表示的三维空间曲面,x和y的取值范围设为[-3,3],并调整三维图的视角、背景色、着色以及透视效果。221010xyz源程序:x=-3:0.1:3;y=-3:0.1:3;[x,y]=meshgrid(x,y);z=(-x.^2/10)+(y.^2)/10;subplot(2,1,1)mesh(x,y,z);title('mesh');xlabel('x');ylabel('y');zlabel('z');subplot(2,1,2)surf(x,y,z);title('surf');xlabel('x');zlabel('z');ylabel('y');运行结果:5110、编写一个drawCircle(r)函数,调用该函数时,根据给定的半径r,以原点为圆心画一个如图所示的红色空心圆,同时比较不同的坐标轴函数axis的设置效果。(图例半径r=5)源程序:r=input('请输入r的值:');subplot(1,2,1)polar(r);subplot(1,2,2)t=0:0.1:2*pi;x=sin(t);52y=cos(t);plot(x,y,'-r')axis('equal');运行结果:11、绘一个圆柱螺旋线(形似弹簧)图。圆柱截面直径为10,高度为5,每圈上升高度为1。如左图所示。利用先前的绘图结果,对程序做少许修改,得到如右图所示图形。源程序:t=0:0.1:10*pi;x=5.*cos(t);53y=5.*sin(t);z=t/7;plot3(x,y,z,'b-','linewidth',1);gridonaxis('square')xlabel('x轴');ylabel('y轴');zlabel('z轴');title('圆柱螺旋线')运行结果:t=0:0.1:10*pi;x=exp(-t/20).*cos(t);y=exp(-t/20).*sin(t);z=t/7;plot3(x,y,z,'r-');gridon54xlabel('X');ylabel('Y');zlabel('Z');title('圆柱螺旋线')