实验三-MATLAB绘图(含实验报告)
- 格式:doc
- 大小:363.50 KB
- 文档页数:11
实验目的1.掌握MATLAB的基本绘图命令。
2.掌握运用MATLAB绘制一维、二维、三维图形的方法.3.给图形加以修饰。
一、预备知识1.基本绘图命令plotplot绘图命令一共有三种形式:⑴plot(y)是plot命令中最为简单的形式,当y为向量时,以y的元素为纵坐标,元素相应的序列号为横坐标,绘制出连线;若y为实矩阵,则按照列绘出每列元素和其序列号的对应关系,曲线数等于矩阵的列数;当y为复矩阵时,则按列以每列元素的实部为横坐标,以虚部为纵坐标,绘出曲线,曲线数等于列数。
⑵ plot(x,y,[linspec])其中linspec是可选的,用它来说明线型。
当x和y为同维向量时,以x为横坐标,y为纵坐标绘制曲线;当x是向量,y是每行元素数目和x维数相同的矩阵时,将绘出以x为横坐标,以y中每行元素为纵坐标的多条曲线,曲线数等于矩阵行数;当x为矩阵,y为相应向量时,使用该命令也能绘出相应图形。
⑶ plot(x1,y1,x2,y2,x3,y3……)能够绘制多条曲线,每条曲线分别以x和y为横纵坐标,各条曲线互不影响。
线型和颜色MATLAB可以对线型和颜色进行设定,线型和颜色种类如下:线:—实线:点线 -.虚点线——折线点:.圆点 +加号 *星号 x x型 o 空心小圆颜色:y 黄 r 红 g 绿 b 蓝 w 白 k 黑 m 紫 c 青特殊的二维图形函数表5 特殊2维绘图函数[1] 直方图在实际中,常会遇到离散数据,当需要比较数据、分析数据在总量中的比例时,直方图就是一种理想的选择,但要注意该方法适用于数据较少的情况。
直方图的绘图函数有以下两种基本形式。
·bar(x,y) 绘制m*n 矩阵的直方图.其中y 为m *n 矩阵或向量,x 必须单向递增。
·bar(y) 绘制y 向量的直方图,x 向量默认为x=1:m close all; %关闭所有的图形视窗。
x=1:10;y=rand (size(x )); bar(x,y ); %绘制直方图.123456789100.51Bar()函数还有barh ()和errorbar ()两种形式,barh()用来绘制水平方向的直方图,其参数与bar()相同,当知道资料的误差值时,可用errorbar ()绘制出误差范围,其一般语法形式为:errorbar (x,y,l,u)其中x,y 是其绘制曲线的坐标,l ,u 是曲线误差的最小值和最大值,制图时,l 向量在曲线下方,u 向量在曲线上方。
实验9 三维绘图一、实验目的学会MATLAB软件中三维绘图的方法。
二、实验内容与要求1.三维曲线图格式一:plot3(X,Y,Z,S).说明:当X,Y,Z均为同维向量时,则plot3描出点X(i),Y(i),Z(i)依次相连的空间曲线.若X,Y均为同维矩阵,X,Y,Z每一组相应列向量为坐标画出一条曲线,S为‘color﹣linestyle﹣marker’控制字符表1.6~表1.10.【例1.79】绘制螺旋线.>>t=0:pi/60:10*pi;>>x=sin(t);>>y=cos(t);>>plot3(x,y,t,’*-b’)>>grid on图形的结果如图1.16所示.格式二:comet3(x,y,z).说明:显示一个彗星通过数据x,y,z确定的三维曲线.【例1.80】>>t=-20*pi:pi/50:20*pi;>>comet3(sin(t),cos(t),t)可见到彗星头(一个小圆圈)沿着数据指定的轨道前进的动画图象,彗星轨道为整个函数所画的螺旋线.格式三:fill3(X,Y,Z,C) ℅填充由参数X,Y,Z确定的多边形,参数C指定颜色.图1.16 例1.79图形结果图1.17 例1.81图形结果【例1.81】>>X=[2,1,2;9,7,1;6,7,0];>>Y=[1,7,0;4,7,9;0,4,3];>>Z=[1,8,6;7,9,6;1,6,1];>>C=[1,0,0;0,1,0;0,0,1]>>fill3(X,Y,Z,C)>>grid on图形的结果如图1.17所示.问题 1.30:图 1.17中每个三角形按什么规律画出的?(用X,Y,Z的对应列元素值为坐标画三角形)每个三角形内填充的颜色又有何规律?(用C 第i列元素值对应的颜色,从第i个三角形对应顶点向中心过渡)若C=[1,5,10;1,5,10;1,5,10],结果如何?2.三维网格图格式:mesh(X,Y,Z,C) ℅画出颜色由C指定的三维网格图.meshc(X,Y,Z,C) ℅画出带有等高线的三维网格图.meshz(X,Y,Z,C) ℅画出带有底座的三维网格图.说明:若X与Y均为向量,n=length(X),m=length(Y), Z必须满足[m,n]=size(Z),则空间中的点(X(j),Y(i),Z(i,j))为所画曲面网线的交点,X 对应于Z的列,Y对应于Z的行;若X,Y,Z均为同维矩阵,则空间中的点(X(i,j),Y(i,j),Z(i,j))为所画曲面的网线的交点;矩阵C指定网线的颜色,MATLAB对矩阵C中的数据进行线性处理,以便从当前色图中获得有用的颜色,若C缺省,网线颜色和曲面的高度Z相匹配.在三维作图常用到命令meshgrid,其功能是生成二元函数z=f(x,y)中x-y平面上的矩形定义域中数据点矩阵X和Y.格式:[X,Y]= meshgrid(x,y).说明:输入向量x为x-y平面上x轴的值,向量y为x-y平面上y轴的值.输出矩阵X为x-y平面上数据点的横坐标值,输出矩阵Y为x-y平面上数据点的纵坐标值.【例1.82】>> x=1:4;>> y=1:5;>> [x,y]=meshgrid(x,y)x =1 2 3 41 2 3 41 2 3 41 2 3 41 2 3 4y =1 1 1 12 2 2 23 3 3 34 4 4 45 5 5 5图1.18所示x-y 平面上的矩形定义域中20个数据点(星号点)的坐标就是有X ,Y 决定的。
实验三 Matlab 绘图实验目的熟悉MTALAB 中几种常用的绘图命令,掌握几种常用图形的画法。
实验内容1.二维:用 matlab 二维绘图命令 plot 作出函数图形。
形式: plot(x,y) 2.空间三维作图:三维曲线:plot3(x,y,z,s);三维曲面:mesh(X,Y,Z) 网格生成函数:meshgridsurf(X,Y,Z):绘制由矩阵 X,Y,Z 所确定的曲面图,参数含义同 mesh sphere(n): 专用于绘制单位球面实验方法与步骤1.利用 plot 函数在一个坐标系下绘制以下函数的图形,要求采用不同的颜色、线型、点标记。
方程组: sin(),cos(),sin(2),02x t y t z t t π===<< 步骤:t=[0:0.05:2*pi] x=sin(t);y=cos(t);z=sin(2*t)plot(t,x,'r+:',t,y,'bd-.',t,z,'k*-') 2.plot3 绘制类似田螺线的一条三维螺线方程组:步骤:t=[0:0.1:10*pi]x=2.*(cos(t)+t.*sin(t)) y=2.*(cos(t)-t.*sin(t)) z=1.5*tplot3(x,y,z)3.墨西哥帽子方程:z=步骤:[x,y]=meshgrid(-8:.5:8); z=sqrt(x.^2+y.^2)+eps;Z=sin(z)./z;mesh(X,Y,Z)axis square4. 利用 surf 函数绘制马鞍面方程:2294x y z=-步骤:x=[-25:0.5:25];y=[-25:0.5:25] [X,Y]=meshgrid(x,y)Z=(X.^2/9)-(Y.^2/4)surf(X,Y,Z)5.双曲抛物面方程:22222 x yz a b-=步骤:x=[-25:0.5:25];y=[-25:0.5:25] ezsurfc('X.^2./16-Y.^2./12')实验结果1.2.100-100-1010104.-4040-4-224XX 2/16-Y 2/12Y总结与思考matlab 的常见错误分析Inner matrix dimensions must agree因为在matlab 的输入变量是矩阵,参与运算的矩阵维数必须对应,矩阵响应元素的运算必须全部加dot (点)。
MATLAB语⾔上机实习报告课程名称:测绘程序设计课程性质:必修测绘程序设计实习报告学院:测绘⼯程学院班级:1220501实习地点:核⼯楼410班级组号:学⽣姓名:赵建新学⽣学号:201220050163指导教师:王建强⽇期:年⽉⽇⽬录实验1 matlab软件练习 (2)实验2 matlab解算⽅程 (5)实验3 matlab绘图 (8)实验4 ⾓度弧度互换 (12)实验5 坐标正反算 (15)实验6 ⽔准⽹计算 (17)实验7 导线⽹计算 (20)实验8 坐标转换 (23)实验⼼得 (26)实验1 matlab软件练习[实验项⽬]:MATLAB软件练习。
[实验⽬的]:熟悉对MATLAB的操作。
[实验仪器设备]:计算机及MATLAB R2009a程序设计语⾔。
[实验原理]:Matlab主要应⽤于数学计算、系统建模与仿真、数学分析与可视化、科学与⼯程制图和⽤户界⾯设计等。
Matlab是⼀个交互式开发系统,其基本数据要素是矩阵。
它的语法规则简单,⽤解释⽅式⼯作,编写程序和运⾏同步,键⼊程序⽴即得出结果,⼈机交互更加简洁和智能化。
[实验内容]:打开matlab,将⿏标放⾄菜单栏和⼯具栏图标上,了解其功能特点以及单击某个图标,熟悉它的界⾯、操作。
例如:(1)命令窗⼝:是进⾏matlab操作最主要的窗⼝,可以把命令窗⼝看成“草稿本”。
在命令窗⼝输⼊matlab的命令和数据后按回车键,⽴即执⾏运算并现实结果。
语句形式为:>>变量=表达式。
(2)历史命令窗⼝:位于界⾯的左下侧,⽤来记录并显⽰已经运⾏过的命令、函数及表达式。
在默认设置下,该窗⼝会显⽰⾃安装⼀来所有使⽤过的命令的历史记录,并标明每次启动软件的时间。
(3)当前⽬录浏览窗⼝:界⾯的左上侧,⽤来设置当前⽬录,并显⽰当前⽬录下的M-⽂件、Mat⽂件、Mdl⽂件等⽂件信息,窗⼝中包括⽂件类型、⽂件⼤⼩、最后修改时间和⽂件的说明信息等。
[实验数据记录及处理]:(1)运⾏matlab,界⾯是⼀个⾼度集成的⼯作界⾯,主要由菜单栏、⼯具栏、当前⼯作⽬录窗⼝、⼯作空间管理窗⼝、历史命令窗⼝和命令窗⼝等组成,如下图所⽰:(2)建⽴“M-⽂件”(“M-⽂件编辑/调试窗⼝集合了代码编辑和程序调试的功能,兵可以分析程序的运⾏效率)[实验结论]:Matlab是⼀款很好的应⽤于数学计算、系统建模与仿真、数学分析与可视化、科学与⼯程制图和⽤户界⾯设计等软件。
v1.0 可编辑可修改实验一 MATLAB 环境的熟悉与基本运算一、实验目的及要求1.熟悉MATLAB 的开发环境; 2.掌握MATLAB 的一些常用命令;3.掌握矩阵、变量、表达式的输入方法及各种基本运算。
二、实验内容1.熟悉MATLAB 的开发环境: ① MATLAB 的各种窗口:命令窗口、命令历史窗口、工作空间窗口、当前路径窗口。
②路径的设置:建立自己的文件夹,加入到MATLAB 路径中,并保存。
设置当前路径,以方便文件管理。
2.学习使用clc 、clear ,了解其功能和作用。
3.矩阵运算:已知:A=[1 2;3 4]; B=[5 5;7 8]; 求:A*B 、A.*B ,并比较结果。
4.使用冒号选出指定元素:已知:A=[1 2 3;4 5 6;7 8 9]; 求:A 中第3列前2个元素;A 中所有列第2,3行的元素; 5.在MATLAB 的命令窗口计算: 1) )2sin(π2) 5.4)4.05589(÷⨯+ 6.关系及逻辑运算1)已知:a=[5:1:15]; b=[1 2 8 8 7 10 12 11 13 14 15],求: y=a==b ,并分析结果 2)已知:X=[0 1;1 0]; Y=[0 0;1 0],求: x&y+x>y ,并分析结果 7.文件操作1)将0到1000的所有整数,写入到D 盘下的文件 2)读入D 盘下的文件,并赋给变量num8.符号运算1)对表达式f=x 3-1 进行因式分解2)对表达式f=(2x 2*(x+3)-10)*t ,分别将自变量x 和t 的同类项合并 3)求3(1)xdz z +⎰三、实验报告要求完成实验内容的3、4、5、6、7、8,写出相应的程序、结果实验二 MATLAB 语言的程序设计一、实验目的1、熟悉 MATLAB 程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计方法3、函数文件的编写和设计4、了解和熟悉变量传递和赋值二、实验内容1.编写程序,计算1+3+5+7+…+(2n+1)的值(用input 语句输入n 值)。
实验三函数式M文件和MA TLAB绘图一、实验目的:1、掌握基本的绘图命令2、掌握各种图形注释方法3、掌握三维图形的绘制方法4、了解一些特殊图形的绘制5、了解图形的高级控制技巧二、相关知识1基本的绘图命令1)、常用绘图命令常用的统计图函数:在MA TLAB 7中,使用plot函数进行二维曲线图的绘制>> x=0:0.1:10;>> y1=sin(x);>> y2=cos(x-2.5);>> y3=sqrt(x);>> plot(x,y1,x,y2,x,y3)3)、极坐标图形的绘制MA TLAB提供了polar(x1,x2,s)函数来在极坐标下绘制图形:(参数1角度,参数2极半径,参数3颜色和线性)>> x= 0:0.01:10;>> y1=sin(x);>> y2 = cos(x-2.5);>> polar(y1,y2,'-r+')4)、多个图形的绘制方法subplot函数可以实现多个图形的绘制:>>x = 0:.1:20;>>subplot(2,2,1)>>plot(x,sin(x));>>subplot(2,2,2);>>plot(x,cos(x))5)、曲线的色彩、线型和数据点型基本的绘图命令都支持使用字符串来给不同的曲线定义不同的线型,颜色和数据点型。
plot(x,sin(x),'-rd')图形注释对图形进行注释的方式A 图形注释“工具栏。
B 图形调色板中的注释工具C insert 菜单中的“注释”命令D 直接使用注释命令Annotation 函数Xlabel ,ylabel ,zlabel 函数 Title 函数 Colorbar 函数 Legend 函数实验内容: 一、 基础练习1、跟我练输入x,y 的值,并将它们的值互换后输出 x=input('Input x please:\n');y=input('Input y please:\n'); echo on z=x; x=y; y=z; disp(x); disp(y);echo off2、练习请求键盘输入命令keyboard ,处理完毕后,键入return ,程序将继续运行 求一元二次方程ax2 +bx+c=0的根。
课程名称: MATLAB实验题目:实验三绘图操作学生姓名:专业:电子信息工程班级:学号:指导教师:张静实验地点:现代通信实验室日期: 2012 年 12月 12 日实验3 绘图操作一、实验目的1、掌握绘制二维图形的常用函数。
2、掌握绘制三维图形的常用函数。
3、掌握绘制图形的辅助操作。
4、掌握图形对象属性的基本操作。
5、掌握利用图形对象进行绘图操作的方法。
二、预习要求(1)复习7章所讲内容;(2)熟悉MATLAB中的绘图命令。
三、实验内容1、已知2=,2cos(2)1y x=,完成下列操作:y y y=,31*2y x(1)在同一坐标系下用不同的颜色和线型绘制3条曲线。
程序如下:clear all;x=0:0.1:2*pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;plot(x,y1,'r-',x,y2,'b*',x,y3,'c+')运行结果:(2)以子图形式绘制3条曲线。
程序:clear all;x=(0:0.01:2)*pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;h1=subplot(2,2,1);plot(x,y1)title('y1=x.^2')h2=subplot(2,2,2);plot(x,y2)title('y2=cos(2*x)');h3=subplot(2,2,3);plot(x,y3)title('y3=y1.*y2');运行结果:(3)分别用条形图、阶梯图、杆图和填充图绘制3条曲线。
条形码绘图:代码:clear all;x=0:0.1:10;y1=x.^2;y2=cos(2*x);y3=y1.*y2;bar(x,y1)title('y1=x.^2');bar(x,y2)title('y2=cos(2*x)');bar(x,y3)title('y3=y1.*y2');运行结果:阶梯图绘图:代码:clear all; x=0:0.1:10;y1=x.^2;y2=cos(2*x);y3=y1.*y2;stairs(x,y1)title('y1=x.^2'); stairs(x,y2)title('y2=cos(2*x)'); stairs(x,y3)title('y3=y1.*y2'); 运行结果:杆图绘图:代码:clear all;x=0:0.1:10;y1=x.^2;y2=cos(2*x);y3=y1.*y2;stem(x,y1)title('y1=x.^2'); stem(x,y2)title('y2=cos(2*x)'); stem(x,y3)title('y3=y1.*y2'); 运行结果:填充图绘图:代码:clear all;x=0:0.1:10;y1=x.^2;y2=cos(2*x);y3=y1.*y2;fill(x,y1,’c’)title('y1=x.^2');fill(x,y2,’r’)title('y2=cos(2*x)');fill(x,y3,’b’)title('y3=y1.*y2'); 运行结果:2、绘制极坐标曲线sin()a b n ρθ=+,并分析参数a ,b ,n 对曲线形状的影响。
班级:通信班姓名:彭羊平学号: 222008315222033实验一:matlab的基本操作一、实验目的:1、了解MATLAB的集成环境,熟悉其基本操作。
2、了解MATLAB的基础知识,包括矩阵的建立、简单操作、逻辑操作和关系运算。
3、熟悉基本的数学函数和逻辑函数。
4、在命令窗口输入命令完成一些简单的功能,为MATLAB程序设计奠定基础。
二、实验内容:1、利用diag等函数产生下列矩阵:然后利用reshape函数将它们变换成行向量。
2、利用rand函数产生(0,1)间均匀分布的10*10随机矩阵A,然后统计A中大于等于0.6的元素的个数。
3、有一矩阵A,找出矩阵中值大于1的元素,并将它们重新排列成列向量B。
4、在一测量矩阵A(6*6),存在有奇异值(假设大于100的值为奇异值),编程实现删去奇异值所在的行。
三、实验结果:1、程序如下:a=fliplr(diag([8,-7,2])+diag([5,3],-1))a=reshape(a,1,9)b=diag([2,5,8])+diag([4],2)+diag([7],-2) b=reshape(b,1,9)结果如下:2、程序如下:A=rand(10)A=A>0.6sum(sum(A))结果如下:3、程序如下:A=fix(5*rand(5))a=A>1;K=find(a);for k=1:length(K)B(k)=A(K(k));endB=B'结果如下:4、程序如下:A=fix(100*rand(8))+5 B=A>100;k=find(any(B'))A(k,:)=0结果如下:班级:通信班姓名:彭羊平学号: 222008315222033实验二: matlab绘图(1)一、实验目的:1、了解MATLAB图形系统和各种图形函数。
2、熟悉MATLAB的基本图形操作,具备MATLAB画图能力。
3、熟悉各种数学函数,并通过图形函数画出。
实验一:Matlab操作环境熟悉一、实验目的1.初步了解Matlab操作环境.2.学习使用图形函数计算器命令funtool及其环境。
二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format 命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:1.单函数运算操作。
求下列函数的符号导数(1)y=sin(x);(2) y=(1+x)^3*(2-x);求下列函数的符号积分(1)y=cos(x);(2)y=1/(1+x^2);(3)y=1/sqrt(1—x^2);(4)y=(x1)/(x+1)/(x+2)求反函数(1)y=(x-1)/(2*x+3); (2) y=exp(x);(3) y=log(x+sqrt(1+x^2));代数式的化简(1)(x+1)*(x-1)*(x-2)/(x-3)/(x—4);(2)sin(x)^2+cos(x)^2;(3)x+sin(x)+2*x—3*cos(x)+4*x*sin(x);2.函数与参数的运算操作。
从y=x^2通过参数的选择去观察下列函数的图形变化(1)y1=(x+1)^2(2)y2=(x+2)^2(3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6) y6=x^2/2 3.两个函数之间的操作求和(1)sin(x)+cos(x) (2) 1+x+x^2+x^3+x^4+x^5乘积(1)exp(—x)*sin(x) (2) sin(x)*x商(1)sin(x)/cos(x); (2) x/(1+x^2); (3) 1/(x—1)/(x—2); 求复合函数(1)y=exp(u) u=sin(x) (2) y=sqrt(u) u=1+exp(x^2)(3) y=sin(u) u=asin(x) (4) y=sinh(u) u=-x实验二:MATLAB基本操作与用法一、实验目的1.掌握用MATLAB命令窗口进行简单数学运算。