Matlab实验报告(三)-MATLAB绘图
- 格式:doc
- 大小:605.00 KB
- 文档页数:11
实验一MATLAB操作基础实验目的和要求:1、熟悉MATLAB的操作环境及基本操作方法。
2、掌握MATLAB的搜索路径及设置方法。
3、熟悉MATLAB帮助信息的查阅方法实验内容:1、建立自己的工作目录,再设置自己的工作目录设置到MA TLAB搜索路径下,再试验用help命令能否查询到自己的工作目录。
2、在MA TLAB的操作环境下验证课本;例1-1至例1-4,总结MATLAB的特点。
例1-1例1-2例1-3例1-43、利用帮助功能查询inv、plot、max、round等函数的功能。
4、完成下列操作:(1)在matlab命令窗口输入以下命令:x=0:pi/10:2*pi;y=sin(x);(2)在工作空间窗口选择变量y,再在工作空间窗口选择回绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形,并分析图形的含义。
5、访问mathworks公司的主页,查询有关MATLAB的产品信息。
主要教学环节的组织:教师讲授实验目的、开发环境界面、演示实验过程,然后同学上机练习。
思考题:1、如何启动与退出MA TLAB集成环境?启动:(1)在windows桌面,单击任务栏上的开始按钮,选择‘所有程序’菜单项,然后选择MA TLAB程序组中的MA TLABR2008b程序选项,即可启动MATLAB系统。
(2)在MA TLAB的安装路径中找到MA TLAB系统启动程序matlab.exe,然后运行它。
(3)在桌面上建立快捷方式后。
双击快捷方式图标,启动MA TLAB。
退出:(1)在MA TLAB主窗口file菜单中选择exitMATLAB命令。
(2)在MA TLAB命令窗口中输入exit或quit命令。
(3)单击MATLAB主窗口的关闭按钮。
2、简述MATLAB的主要功能。
MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符号计算功能、绘图功能、编程语言功能以及应用工具箱的扩展功能。
3、如果一个MATLAB命令包含的字符很多,需要分成多行输入,该如何处理?使用‘;’隔开4、Help命令和lookfor命令有何区别?help是显示matlab内置的帮助信息一般是help 命令;而lookfor 关键词是通过关键词查找,“关键词”就是你要找的词语5、在MA TLAB环境下,建立了一个变量fac,同时又在当前目录下建立了一个m文件fac.m,如果需要运行fac.m文件,该如何处理?实验二MATLAB矩阵及运算实验目的和要求:1、掌握MATLAB数据对象的特点及运算规则2、掌握MATLAB建立矩阵的方法及矩阵处理的方法3、掌握MATLAB分析的方法实验内容:1.求下列表达式的值(1)(2)(3)(4)2.已知A=[-1,5,-4;0,7,8;3,61,7],B=[8,3,-1;2,5,3;-3,2,0] 求下列表达式的值:(1)A+6B和A^2-B+I(其中I为单位矩阵)。
MATLAB实验报告一、实验目的本次 MATLAB 实验旨在深入了解和掌握 MATLAB 软件的基本操作和应用,通过实际编程和数据处理,提高解决问题的能力,培养编程思维和逻辑分析能力。
二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。
计算机配置为英特尔酷睿 i5 处理器,8GB 内存。
三、实验内容(一)矩阵运算1、矩阵的创建使用直接输入、函数生成和从外部文件导入等方式创建矩阵。
例如,通过`1 2 3; 4 5 6; 7 8 9` 直接输入创建一个 3 行 3 列的矩阵;使用`ones(3,3)`函数创建一个 3 行 3 列元素全为 1 的矩阵。
2、矩阵的基本运算包括矩阵的加减乘除、求逆、转置等。
例如,对于两个相同维度的矩阵`A` 和`B` ,可以进行加法运算`C = A + B` 。
3、矩阵的特征值和特征向量计算通过`eig` 函数计算矩阵的特征值和特征向量,加深对线性代数知识的理解和应用。
(二)函数编写1、自定义函数使用`function` 关键字定义自己的函数,例如编写一个计算两个数之和的函数`function s = add(a,b) s = a + b; end` 。
2、函数的调用在主程序中调用自定义函数,并传递参数进行计算。
3、函数的参数传递了解值传递和引用传递的区别,以及如何根据实际需求选择合适的参数传递方式。
(三)绘图功能1、二维图形绘制使用`plot` 函数绘制简单的折线图、曲线等,如`x = 0:01:2pi; y = sin(x); plot(x,y)`绘制正弦曲线。
2、图形的修饰通过设置坐标轴范围、标题、标签、线条颜色和样式等属性,使图形更加清晰和美观。
3、三维图形绘制尝试使用`mesh` 、`surf` 等函数绘制三维图形,如绘制一个球面`x,y,z = sphere(50); surf(x,y,z)`。
(四)数据处理与分析1、数据的读取和写入使用`load` 和`save` 函数从外部文件读取数据和将数据保存到文件中。
实验三函数式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实验报告实验⼀ 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 盘下的data 、txt ⽂件 2)读⼊D 盘下的data 、txt ⽂件,并赋给变量num 8、符号运算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 值)。
课程名称: 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 对曲线形状的影响。
效果图:2. 当k = 1,2,3时,在同一幅图用同时画出函数sin()y kx 的图形。
MATLAB 代码:x = 0:pi/100:2*pi; y1 = sin(x); y2 = sin(2*x); y3 = sin(3*x); plot(x,y1,x,y2,x,y3) axis([0 2*pi -1 1])legend('y = sin(x)','y = sin(2x)','y = sin(3x)')注:legend 的作用是对图中的不同曲线做标注效果图:以上画图的效果也可以用hold on实现:x = 0:pi/100:2*pi;y1 = sin(x);y2 = sin(2*x);y3 = sin(3*x);plot(x,y1);hold on;plot(x,y2);plot(x,y3);hold offsubplot(2,2,4); plot(x,y)title('y = exp(x)*sin(4x)')注:title 的作用是给图形写上标题 效果图:4. 作隐函数3330x y xy +-=(笛卡尔儿叶形线)的图形 MATLAB 代码:ezplot('x^3+y^3-3*x*y',[-2 2 -2 2])axis equal注: axis equal 的作用是把纵横坐标的刻度比例一致 效果图:5. 在极坐标系下画出心形线2(1cos )r θ=+ MATLAB 代码:theta = 0:pi/100:2*pi; r = 2*(1+cos(theta)); polar(theta,r,'r')注:参数’r’是表示用红色作图,参数与颜色之间的关系如下表所示:b 蓝色g 绿色r 红色c 青绿色m 洋红色y 黄色k 黑色效果图:5. 画出空间螺旋线cos(),sin(),x t y t z t ===的图形MATLAB 代码:t = 0:pi/100:10*pi;x = cos(t);y = sin(t);z = t;plot3(x,y,z)title('x = cos(t),y = sin(t) z = t')效果图:7. 画出MATLAB测试函数peaks的图形MATLAB代码:[X,Y,Z] = peaks;surf(X,Y,Z)shading interpcolormap(cool)注:shading可使用的参数及含义如下:faceted 网络修饰,这是缺省的方式flat 去掉黑色线条,根据小方格的值确定颜色interp 颜色整体改变,根据小方块四角的值差补过度点的值确定颜色colormap为色图设定函数,其参数及含义如下:hsv ——饱和值色图gray ——线性灰度色图hot ——暖色色图cool ——冷色色图bone ——兰色调灰色图copper ——铜色色图pink ——粉红色图prism ——光谱色图jet ——饱和值色图IIflag ——红、白、蓝交替色图六、课堂练习1. 在同一坐标系中画出函数1sin(2*3)y x=+,2sin(32)y x=+的图形,且对于不以同的曲线使用不同的线型;>> x=0:pi/100:2*pi;y1=sin(2*x+3);y2=sin(3*x+2);plot(x,y1,'r-',x,y2,'g+')legend('y1=sin(2*x+3)','y2=sin(3*x+2)')>>2. 当k 分别取1, 2, 3, 4的时候,在同一个窗口的四个子图中分别画出函数*sin(*)y t k t ,每个子图加上适当的标题;>> t = 0:pi/100:2*pi;% 画第一幅子图y = t.*sin(1*t);subplot(2,2,1);3. 画出三个两两相切的圆(假设这个三个圆的方程分别是:22221,(3)4x y x y +=-+=,22(4)9x y +-=);>> ezplot('x^2+y^2=1',[-7 7 -7 7]);hold onezplot('(x-3)^2+y^2=4',[-7 7 -7 7]);hold onezplot('x^2+(y-4)^2=9',[-7 7 -7 7]);4. 在极坐标系下画出三叶形曲线3*sin(3*)r θ=,并尝试不同的线形和颜色; theta = 0:pi/100:2*pi;>> r=3*sin(3*theta);>> polar(theta,r,'r')theta = 0:pi/100:2*pi; r=3*sin(3*theta); polar(theta,r,'g+')5. 画出星形线332*cos ,2*sin x t y t ==的图形; >> t = 0:pi/100:10*pi;x=2*cos(t).^3;>> y=2*sin(t).^3;>> plot(x,y)6. 画出双纽线22222()3*()x y x y +=-的图形; ezplot('(x^2+y^2)^2=3*(x^2-y^2)',[-3 3 -3 3])7. 画出三维曲线图:*cos ,*sin ,x t t y t t z t ===>> t=0:pi/100:2*pi;>> x=t.*cos(t);>> y=t.*sin(t);>> z=t;>> plot3(x,y,z)8. 分别用mesh和surf函数画出马鞍面2246x yz=-+9x=-pi:pi/50:pi;y=x;[X,Y]=meshgrid(x,y); z=-X.^2./4+Y.^2./6.*9; mesh(X,Y,z)>> x=-pi:pi/50:pi;y=x;[X,Y]=meshgrid(x,y); z=-X.^2./4+Y.^2./6.*9; >> surf(X,Y,z)9. 画出球心在原点的球。
MATLAB实验报告3MATLAB实验报告3一、实验目的1.掌握MATLAB程序的调试方法;2.掌握MATLAB中的矩阵操作;3.熟悉MATLAB中处理图像的基本操作。
二、实验内容1.用MATLAB调试程序;2.用MATLAB进行矩阵运算;3.用MATLAB处理图像。
三、实验原理及步骤1.MATLAB程序的调试方法在MATLAB中调试程序可以采用设置断点、逐行运行、单步调试等方法。
设置断点可以在程序中的其中一行上点击左键,会出现一个红色的圆点表示断点已设置。
逐行运行可以通过点击Editor界面上的运行按钮实现。
单步调试可以通过点击断点所在行的左侧按钮实现。
2.矩阵运算在MATLAB中,对于矩阵的运算可以使用一些基本的函数,如矩阵加法、减法、乘法等。
矩阵加法可以使用"+"操作符实现,减法可以使用"-"操作符实现,乘法可以使用"*"操作符实现。
另外,MATLAB还提供了一些更复杂的矩阵运算函数,如矩阵的转置、逆等。
3.图像处理在MATLAB中,可以使用imread函数加载图像文件,使用imshow函数显示图像,使用imwrite函数保存图像。
另外,还可以使用一些图像处理函数对图像进行处理,如灰度化、二值化、平滑滤波等。
四、实验步骤1.调试程序首先,在MATLAB的Editor界面中打开要调试的程序文件。
然后,在程序的其中一行上点击左键,即设置了一个断点。
最后,点击运行按钮,程序会在断点处停下,然后可以通过单步调试和逐行运行来逐步查看程序的执行过程和变量的取值。
2.矩阵运算首先,定义两个矩阵A和B,并赋值。
然后,使用"+"操作符对两个矩阵进行相加,得到矩阵C。
最后,使用disp函数显示矩阵C的值。
3.图像处理首先,使用imread函数加载一张图像。
然后,使用imshow函数显示加载的图像。
接着,使用rgb2gray函数将彩色图像转换为灰度图像。
班级:通信班姓名:彭羊平学号: 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编程应用已知单位负反馈的开环传递函数为:G(s)=ωξω(1)假设自然频率ω给定,取五个不同的阻尼比ξ。
试用MATLAB编程,在同一张图中绘制其单位阶跃响应曲线,并分析阻尼比对二阶动态系统的影响。
取ω=2,ξ=0.25, 0.5, 1,2,4由开环传递函数求出闭环传递函数:G(s)=ωξωω将数据带入闭环传递函数得:G(s)=,ξ则随着ξ的值变化,绘制的曲线将不同。
写入MATLAB程序如下:clearclcnum=4;den1=[1 1 4];sys1=tf(num,den1);den2=[1 2 4];sys2=tf(num,den2);den3=[1 4 4];sys3=tf(num,den3);den4=[1 8 4];sys4=tf(num,den4);den5=[1 16 4];sys5=tf(num,den5);step(sys1,'b-',sys2,'g-',sys3,'r-',sys4,'c-',sys5,'y-',20);图1-1 阻尼比不同的单位阶跃响应曲线图阻尼比对二阶动态系统的影响:随着阻尼比ξ的增大,系统超调量逐渐减小。
当阻尼比大于1时,系统响应曲线为单调曲线,已经没有振荡了。
(2)假设阻尼比ξ给定,取五个不同的自然频率ω。
试用MATLAB编程,在同一张图中绘制其单位阶跃响应曲线,并分析自然频率对二阶动态系统的影响。
取ξ=0.5,ω=0.5,1,2,3, 4将数据带入闭环传递函数得:G(s)=ω,ωω则随着ω的值变化,绘制的曲线将不同写入MATLAB程序如下:clearclcnum1=0.25;den1=[1 0.5 0.25];sys1=tf(num1,den1);num2=1;den2=[1 1 1];sys2=tf(num2,den2);num3=4;den3=[1 2 4];sys3=tf(num3,den3);num4=9;den4=[1 3 9];sys4=tf(num4,den4);num5=16;den5=[1 4 16];sys5=tf(num5,den5);step(sys1,'b-',sys2,'g-',sys3,'r-',sys4,'c-',sys5,'y-',20);图1-2 自然频率不同的单位阶跃响应曲线图自然频率对二阶动态系统的影响:随着自然频率的增加,系统的响应速度加快,而响应曲线的峰值保持不变。
MATLAB绘图实验报告三MATLAB绘图实验报告三**大学实验报告学院:计信学院专业:网络工程班级:网络092姓名实验时间实验项目名称实 1.掌握绘制二维图形及三维图形的方法。
验2.掌握图形控制与修饰处理的方法。
目3.了解图像处理及动画制作的基本方法。
的实验要求实验PC机、MATLAB7.0仪器在MATLAB7.0下认真独立完成各个实验,并了解和掌握绘制二维、三围图形的方法,学会图形制作的基本方法。
学号指导教师实验组成绩实验3.MATLAB绘图实验MATLAB程序设计教程第四章课后实验习题1、2、4内容1.(1)(2)实验数据2.4.(1)(2)1.在MATLAB中,绘制直角坐标系下的二维曲线可以利用plot函数。
实验总2.在绘制图形的同时,可对图形添加图形标注,以使图形意义更加明确,可读性强。
3.Mesh函数用于绘制三维网格图,在不需要绘制特别精细的三维曲面图时,可通过三维网格图来表示三维曲面。
结4.MATLAB有功能极强的图形处理工具箱,可对图像进行更专业的处理---图形处理;描绘质点运动轨迹的动画轨迹动画。
指导教师意见签名:年月日注:各学院可根据教学需要对以上栏木进行增减。
表格内容可根据内容扩充。
MATLAB绘图实验报告实验项目:MATLAB作图实验目的:1)了解MATLAB平面绘图的命令,如MATLAB常用的二维及三维绘图命令。
2)了解MATLAB立体图形的绘制,其中包括常用的立体绘图函数的理解。
实验原理:一、平面绘图命令1)plot:线性二维图。
plot函数常用的格式:plot(x,y)或者plot(x,y,s)或plot(x1,y1,x2,y2,...)或plot(x1,y1,s1,x2,y2,s2,...)其中x,x1,x2,…为横坐标,y,y1,y2,…为纵坐标,s,s1,s2,…为绘图方式参数。
绘图方式参数及含义:颜色:bblue;ggreen;rred;ccyan;mmagenta;yyellow;kblack。
2015秋2013级《MATLAB程序设计》实验报告实验一班级:软件131 姓名:付云雷学号:132872一、实验目的:1、了解MATLAB程序设计的开发环境,熟悉命令窗口、工作区窗口、历史命令等窗口的使用。
2、掌握MATLAB常用命令的使用。
3、掌握MATLAB帮助系统的使用。
4、熟悉利用MATLAB进行简单数学计算以及绘图的操作方法。
二、实验内容:1、启动MATLAB软件,熟悉MATLAB的基本工作桌面,了解各个窗口的功能与使用。
图1 MATLAB工作桌面2、MATLAB的常用命令与系统帮助:(1)系统帮助help:用来查询已知命令的用法。
例如已知inv是用来计算逆矩阵,键入help inv即可得知有关inv命令的用法。
lookfor:用来寻找未知的命令。
例如要寻找计算反矩阵的命令,可键入lookfor inverse,MATLAB即会列出所有和关键字inverse相关的指令。
找到所需的命令後,即可用help进一步找出其用法。
(2)数据显示格式:常用命令:说明format short 显示小数点后4位(缺省值)format long 显示15位format bank 显示小数点后2位format + 显示+,-,0format short e 5位科学记数法format long e 15位科学记数法format rat 最接近的有理数显示(3)命令行编辑:键盘上的各种箭头和控制键提供了命令的重调、编辑功能。
具体用法如下:↑----重调前一行(可重复使用调用更早的)↓----重调后一行→----前移一字符←----后移一字符home----前移到行首end----移动到行末esc----清除一行del----清除当前字符backspace----清除前一字符(4)MATLAB工作区常用命令:who--------显示当前工作区中所有用户变量名whos--------显示当前工作区中所有用户变量名及大小、字节数和类型disp(x) -----显示变量X的内容clear -----清除工作区中用户定义的所有变量save文件名-----保存工作区中用户定义的所有变量到指定文件中load文件名-----载入指定文件中的数据3、在命令窗口执行命令完成以下运算,观察workspace的变化,记录运算结果。
matlab实验报告Matlab实验报告引言:Matlab(Matrix Laboratory)是一种高级的计算机编程语言和环境,主要用于数值计算、数据分析和可视化。
它的功能强大,被广泛应用于科学研究、工程设计和教学实验等领域。
本实验报告将介绍我在使用Matlab进行实验过程中的一些经验和收获。
一、Matlab的基本语法和数据类型Matlab的语法与其他编程语言相比较简单,但仍然需要掌握一些基本的语法规则。
例如,Matlab中的变量命名不区分大小写,但建议使用小写字母来命名变量。
Matlab支持多种数据类型,包括数值型、字符型、逻辑型等。
在实验中,我常常使用数值型数据进行计算和分析。
二、Matlab中的矩阵运算矩阵运算是Matlab的重要特性之一,它使得处理大量数据变得更加高效和简便。
我在实验中经常使用矩阵运算来进行数据的处理和分析。
例如,我可以使用矩阵乘法来计算两个矩阵的乘积,或者使用矩阵的转置来进行数据的重排和变换。
Matlab还提供了丰富的矩阵运算函数,如求逆矩阵、特征值分解等,这些函数大大简化了复杂计算的过程。
三、Matlab的数据可视化Matlab提供了强大的数据可视化功能,可以帮助我们更直观地理解和展示数据。
在实验中,我常常使用Matlab绘制曲线图、散点图和柱状图等,以便更清晰地观察数据的分布和趋势。
Matlab的绘图函数丰富多样,可以根据不同的需求选择合适的图形类型和样式。
此外,Matlab还支持图像处理和三维可视化等高级功能,这些功能在科学研究和工程设计中有着广泛的应用。
四、Matlab的编程和调试Matlab不仅是一种计算工具,还是一种编程语言。
通过编写脚本和函数,我们可以实现更复杂的计算和操作。
在实验中,我常常使用Matlab编写自定义函数来实现特定的功能。
编程过程中,我注意到Matlab的调试功能非常强大,可以帮助我们找出代码中的错误和问题。
Matlab提供了断点调试、变量监视和错误提示等功能,这些功能对于提高代码的可靠性和效率非常有帮助。
实验一基本操作和简单语句输入一、实验环境计算机MATLAB软件二、实验目的1、熟悉MATLAB的命令窗口。
2、掌握MATLAB的一些基本操作,能够进行一般的数值计算。
3、实现语句的重调和修改。
三、实验内容与步骤1、启动MATLAB2、观察MATLAB窗口的各个组成部分(1)了解菜单栏各窗口项的功能,用鼠标打开MA TLAB的各个菜单,在状态栏里显示当前鼠标所指的菜单项的含义。
(2)用鼠标指向常用工具栏的每个工具按钮,了解各工具按钮的含义。
3、命令窗口的打开和关闭(1)查看菜单窗口中有哪些菜单命令。
(2)在命令窗口中输入命令a=3;b=4;y=a*b+a/b,然后回车,查看命令显示结果。
>> a=3;b=4;y=a*b+a/b,y =12.7500(3)利用MATLAB中编辑命令时常用的按键功能,调用上一个语句,对它进行修改(如把分号改成逗号,看运行结果),并把运行结果复制到word中保存。
>> a=3,b=4,y=a*b+a/b,a =3b =4y =12.7500(4)关闭命令窗口。
(5)打开命令窗口。
4、使用MATLAB帮助熟悉MATLAB的帮助系统,通过帮助系统了解有关内容。
5、在命令窗口中输入demo,将出现MA TLAB的演示窗,通过演示窗,对MATLAB 的功能进行一次浏览。
四、练习1、计算y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x),x=2,x=3时的值。
>> x=2;y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)y =-4.4697>> x=3;y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)y =10.38652、计算cos(pi/3)-sqrt(9-sqrt(2))>> cos(pi/3)-sqrt(9-sqrt(2))ans =-2.25423、已知:a=3,A=4,b=a^2,B=b^2-1,c=a+A-2*B,C=a+B+2*c,求:C>> a=3;A=4;b=a^2;B=b^2-1;c=a+A-2*B;C=a+B+2*cC =-2234、复数z1=1+3*i,z2=1+2*i,z3=2*exp((pi/6)*i),求z=(z1*z2)/z3>> z1=1+3*i;z2=1+2*i;z3=2*exp((pi/6)*i);z=(z1*z2)/z3z =-0.9151 + 3.4151i实验二矩阵和数组的操作一、实验环境计算机MATLAB软件二、实验目的1、掌握矩阵和数组的一般操作,包括创建、保存、修改和调用等。
实验目的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 向量在曲线上方。
或用errorbar (x ,y ,e )绘制误差范围是[y —e ,y+e ]的误差直方图。
下面看一个例子。
x=linspace(0,2,20)*pi y=sin (x)e=std(y)*ones (size (x )); %设置误差为原始数据的标准差。
errorbar (x,y,e ); %绘制以标准差为误差范围的误差直方图.-22468-2-1012[2] 柄图柄图又称火柴杆图或针状图,主要用来绘制数位信号。
该图把每个数据点画成一条直线,在直线未端用点表示数据,所以形象地称作火柴杆图或针状图(大头针)。
绘制此图形的函数为stem ()函数,常用格式如下:·stem(y) 向量y 的值作为柄的长度从x 轴延伸,x 值自动产生,当y 为矩阵时,每一行的值在同一个柄上生成.·stem(x,y ) 绘制x 对y 的列向量的柄图。
x 和y 可以是同样大小的向量或矩阵,当x 为行或列向量时,y 行数必须与x 的长度相同。
·stem(…,’fill’) fill 参数确定是否填充柄的头部·stem(…,linespec) linespec 确定柄图线的属性,如线型,颜色及标记等。
下面是绘制柄图的一个简单的例子. x=linspace(0,10,50); y=sin(x)。
*exp (—x/3); stem(x,y); %绘制柄图0246810[3] 阶梯图和柄图类似,stairs()函数也常用来绘制横坐标是时间序列的数位信号,又称阶梯图。
不同的是stairs()函数绘制出的阶梯图其相邻数据点间不用直线连接,而是相邻两点间的值全取起点数据的值,该函数的常用语法格式与stem()函数类似的有:stairs (y ) stairs(x,y ) stairs(…,linespec)变量的含义与stem()函数类似。
Stairs ()函数画出阶梯图例子如下所示: x=linspace (0,10,50); y=sin (x).*exp(-x/3);stairs(x ,y ); %绘制函数y 的阶梯图 title (‘stair 函数')0246810-0.50.51stair函函[4] 饼图饼图与直方图的功能类似,都表示资料中某个分量在总量中所占的比例,它的基本命令格式为:·pie(x ) 绘制向量x 的饼图,x 中的值被x/sum (x)规范化以确定饼图中每一片的大小.如果sum(x)<=1,则直接用x中的值作为饼中片的大小,如果sum(x)〉1,则只画出饼图的一部分。
·pie(x,explode) 用来从x的饼图中去掉explode向量表示的片,explode必须与x大小相同。
explode向量被置1的分量对应片与此饼图分开。
·pie(x,label)用来标注饼图中片的名称.下面是一个用函数绘制饼图的例子.x=[11。
4,23。
5,35。
4,15.6];%某工厂4个季度的生产量。
explode=zeros(size(x)); %生成零向量。
[c,offset]=min(x); %c=1,求最小值的下标offset,c=1。
explode(offset)=1; %指定占比例最小的一块和整个饼分离.pie(x,explode);%绘制有分离的饼图。
[5]频数累计柱状图频数累计柱状图主要用于在笛卡尔坐标系中统计在一定范围内数据的频数,并用柱状图表示出来,可用大量的资料显示其分布情况和统计特性。
函数hist()的常用语法格式为:·n=hist(y)把y向量中的数据等划分为10个区间进行统计,最后画出10个柱形。
如果y为矩阵,则按列计算。
·n=hist(y,x)其中y为要统计的.当x为标量时,x指定了统计的区间数;当x为向量时,以该向量中各元素为中心进行统计,区间数等于x向量的长度。
·n=hist(y,n)其中n为要绘出的柱形数.下面是柱形图的一个例子。
x=randn(5000,1); %产生5000个m=0,s=1,的高斯乱数hist(x,20); %20代表长条的个数。
-4-2024020*******800[6]极坐标图极坐标图在工程计算中应用十分广泛,MATLAB 用polar ()函数绘制极坐标图,函数的常用语法格式为:polar (theta ,rho) 用角度theta 对极半径rho 作图。
其中theta 必须用弧度表示,如用角度需先转换。
polar (theta ,rho ,s ) theta 与rho 同前,s 为曲线使用的线型. 应用如下,得到的结果如图所示。
theta=linspace(0,2*pi); r=cos(4*theta ); polar (theta,r); title (‘极坐标图’)函函函函另外,还可以用rose()函数在极坐标系中绘制频数累计柱状图—角度直方图(又称玫瑰图).rose 和hist 很接近,只不过是将数据大小视为角度,数据个数视为距离,并用极坐标绘制表示。
该函数的常用语法格式为:·rose(theta) 用相角theta 绘制角度直方图·rose(theta,nbins ) 其中nbins 是一个整数,把0-2Π分成等份,默认值为20。
·rose(theta,x) 其中x 是一个向量,用theta 对向量x 作图。
接下来绘制离散随机序列的角度直方图。
x=randn (1000,1); rose(x);title (‘随机序列的角度直方图’) 运行后的结果如图所示.50 100 1503021060240902701203001503301800函函函函函函函函函函二、 实验内容与步骤1.创建一个5×5魔方矩阵,并画出表示这个矩阵的图形。
在命令区输入:A=magic (5);plot (A )2.在同一坐标轴里绘出y=sin(x ),z=cos (x )两条曲线。
在命令区输入:x=linspace (0,2*pi,50);y=sin (x ); plot(x ,y ) hold on z=cos(x); plot (x ,z) hold off3.画出y=x²的曲线(x ∈(-5,5))。
在这曲线上加入相同区间里的y=31x 的曲线,并且要求采用绿色折线标识。
在命令区输入;x=linspace (-5,5,100); y=x 。
^2; plot (x ,y)hold onz=x 。
^(1/3);plot(x,z ,’g——’) hold off4.在同一窗口,不同坐标系里分别绘出y1=sinx ,y2=cosx ,y3=cinh(x ),y4=cosh(x )4个图形。
在命令区输入:x=linspace (0,2*pi,30);subplot (2,2,1);plot (x,sin (x )); subplot(2,2,2);plot (x ,cos (x)); subplot (2,2,3);plot (x,sinh(x)); subplot (2,2,4);plot (x ,cosh(x ));5.绘制一个三维曲线x=cosp,y=sinp,z=p。
在命令区输入:p=0:pi/10:20*pi;x=cos(p);y=sin(p);z=p;plot3(x,y,z)三、练习1。
画出横坐标在(—15,15)上的函数y=cosx的曲线。
2.用图形表示离散函数y=|(n—6)|1-,并加入网格。
3。
用图形表示连续调制波形y=sin(t)sin(9t)及其包络线。
4.设x=zsin3z,y=zcos3z,要求在-45~45区间内画出x 、y 、z 三维曲线。
5.绘制函数r r z /)sin( 的三维曲面图,其中22y x r +=。
四、 实验分析本次试验主要对MATLAB绘图进行练习,二维作图与三维作图基本相似,只不过参数不同,多了一个z轴,进行三维图形绘制时注意x,y,z的顺序。
五、实验总结MATLAB具有强大的图形功能,能够解决很多的问题,将它们直观的表现出来。