Matlab实验报告(同名23083)
matlab实验报告

Matlab实验报告一、实验名称:matlab实验报告二、实验目的:熟悉并学会掌握matlab的基本操作。
三、实验内容:准确编写第二,三,四章课后习题的matlab程序。
四、实验数据处理第二章MATLAB 基本操作第一题:利用基本矩阵产生3X3和15X8的单位阵、全1阵、全0阵,随机分布矩阵([-1,1]之间)、正态分布随机阵(均值为1,方差为4)。
程序:>> A=eye(3)A = 1 0 00 1 00 0 1>> A=ones(3)A =1 1 11 1 11 1 1>> A=zeros(3)A =0 0 00 0 00 0 0>> A=1-2*rand(3)A =-0.9003 0.0280 0.08710.5377 -0.7826 0.9630-0.2137 -0.5242 -0.6428>> A=2*randn(3)+1A =0.1349 1.5754 3.3783-2.3312 -1.2929 0.92471.2507 3.3818 1.6546>> B=eye(2,3)B =1 0 00 1 0>> B=ones(2,3)B = 1 1 11 1 1>> B=zeros(2,3)B =0 0 00 0 0>> B=1-2*rand(2,3)B = 0.1106 -0.5839 -0.4764-0.2309 -0.8436 0.6475>> B=2*randn(2,3)+1B =1.3493 2.4516 5.36640.6266 -0.1766 0.7272第五题:利用rand函数产生(0,1)间均匀分布的5X5随机矩阵A,然后统计A中大于等于0.6的元素个数。
程序:A=rand(5)A =0.4057 0.0579 0.2028 0.0153 0.41860.9355 0.3529 0.1987 0.7468 0.84620.9169 0.8132 0.6038 0.4451 0.52520.4103 0.0099 0.2722 0.9318 0.20260.8936 0.1389 0.1988 0.4660 0.6721>> n=sum(sum(A>=0.6))n =9第六题:利用rand函数产生均值为0,方差为1的4X4正态分布随机矩阵A,然后统计A 中大于-0.5且小于0.5的元素个数。
matlab实验报告

MATLAB实验报告姓名:学号: 0905130129专业班级:通信工程1301班学院:信息科学与工程学院指导老师:陈科文、支国明、张金焕、周扬目录实验一熟悉MATLAB环境 (3)[实验目的] (3)[实验原理] (3)[实验内容] (4)[实验结果] (5)[实验遇到的问题及解决] (11)实验二数值数组创建、应用及可视化 (12)[实验目的] (12)[实验原理] (12)[实验内容] (13)[实验结果] (15)[实验遇到的问题及解决] (20)实验三字符串数组的使用、简单脚本文件和函数的编写 (21)[实验目的] (21)[实验原理] (21)[实验内容] (24)[实验结果] (26)[实验遇到的问题及解决] (35)实验四数据可视化方法 (35)[实验目的] (35)[实验原理] (35)[实验内容] (37)[实验结果] (39)[实验遇到的问题及解决] (46)总结 (46)实验一熟悉MATLAB环境[实验目的]1 .熟悉MATLAB 主界面,并学会简单的菜单操作。
2 .学会简单的矩阵输入与信号输入。
3 .掌握部分绘图函数。
[实验原理]MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。
它提供了各种矩阵的运算与操作,并有较强的绘图功能。
用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。
也可以键入help 进行进一步了解。
MATLAB 启动界面如图所示:操作界面主要的介绍如下:指令窗(Command Window ),在该窗可键入各种送给MATLAB 运作的指令、函数、表达式,并显示除图形外的所以运算结果。
历史指令窗(Command History ),该窗记录已经运行过的指令、函数、表达式;允许用户对它们进行选择复制、重运行,以及产生M 文件。
工作空间浏览器(Workspace Browser ),该窗口罗列出MATLAB 工作空间中所有的变量名、大小、字节数;并且在该窗中,可对变量进行观察、编辑、提取和保存。
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 值)。
Matlab实验报告

实验结果及分析实验1:程序如下x=1:10y=2*x;plot(x,y)仿真结果:实验结果分析:仿真结果是条很规则的直线,X轴和Y轴一一对应,清楚明了,而序又特别简单。
所以用Maltab 软件很方便地画出规则的直线,方便研究。
实验结果及分析1、A=2、A=1A=实验结果及分析实验三 Matlab在信号与系统中的应用实验名称实验1、掌握信号与系统课程中基本知识的Matlab编程、仿真方法目的实验原理实验1程序:b=[1];a=[1 1];p=;t=0:p:5;x=exp(-3*t);subplot(1,2,1);impulse(b,a,0:p:5);title('冲激响应');subplot(1,2,2);step(b,a,0:p:5);title('阶跃响应');实验内容<设计性实验>1、用MATLAB在时域中编程求解y′(t)+y(t)=f(t), f(t)= exp(-3t)ε(t)的冲激响应、阶跃响应。
在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。
<设计性实验>(选做)2、用MATLAB在时域中编程求解y′(t)+y(t)=f(t), f(t)=(1+exp(-3t))ε(t)的冲激响应、阶跃响应,要求用conv编程实现系统响应。
在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。
实验结果及分析实验1仿真结果:simulink仿真环境下冲激响应阶跃响应实验名称实验四 Matlab在数字信号处理中的应用实验结果及分析实验1仿真结果:6khz12kHZ。
matlab实践报告

竭诚为您提供优质文档/双击可除matlab实践报告篇一:matlab实习报告mATLAb实习报告姓名:吴涛专业:电子信息工程班级学号:信息(2)班20XX1605010230指导教师:宋艳霞钱云实习时间:20XX,5,13至20XX,5,17目录:一:实习目的 (3)二:实习任务...........................三:实习要求...........................四:实习目的...........................五:实习体会...........................一:实习目的熟悉matlab的软件环境熟悉matlab的基本使用方法二:实习任务1.掌握matlab语言的基本语法规则及基本操作命令的使用。
2.熟悉运用matlab的数组,矩阵运算,数学运算的运算方法。
3.熟悉matlab的字符串,单元数组。
4.熟悉matlab的程序设计。
5.熟悉matlab的符号计算功能。
6.熟悉matlab的绘图及句柄图形。
7.6熟悉matlab的guI设计。
三:实习要求1.每次上机要签到,记录。
2.做的题目要在上机结束后以电子版和woRD文档形式交给指定负责人。
3.认真做一份实习总结报告。
四:实习内容共六题第1题:求a和b的和。
代码:a=[1,2,3]b=[4,5,6]s=a+b结果:s=579第2题:求a和b的差。
代码:a=[4,5,6]b=[1,2(:matlab实践报告),3]h=a-b结果:h=333第3题:求下列方程组的解。
6x1+3x2+4x3=3-2x1+5x2+7x3=-48x2-4x2-3x3=-7代码:A=[6,3,4;-2,5,7;8,-4,-3] b=[3;-4;-7]a=A\b结果:a=0.60007.0000-5.4000第4题:用for语句求三角函数表。
代码:forx=0:0.1:pi/4disp([x,sin(x),cos(x),tan(x)]),en d结果:00100.10000.09980.99500.10030.20000.19870.98010.20270.30000.29550.95530.30930.40000.38940.92110.4228篇二:matlab课程实践报告mATLAb实践》课程设计学生姓名:林淑真学号:110900824专业班级:通信工程四班指导教师:郑晓明二○一二年六月十五日《目录1.设计目的.........................................................22.题目分析.........................................................23.总体设计.........................................................34.具体设计.........................................................35.结果分析.........................................................226.心得体会.........................................................237.参考书目.........................................................238.附录 (24)1、设计目的综合运用mATLAb工具箱实现图像处理的guI程序设计。
matlab计算机实验报告

matlab计算机实验报告Matlab计算机实验报告引言Matlab是一种强大的计算机软件,广泛应用于科学计算、数据分析和工程设计等领域。
本实验报告旨在介绍我对Matlab的实验研究和应用。
通过实验,我深入了解了Matlab的功能和特点,并通过实际案例展示了其在科学计算和数据处理中的应用。
实验一:基本操作和语法在本实验中,我首先学习了Matlab的基本操作和语法。
通过编写简单的程序,我熟悉了Matlab的变量定义、赋值、运算符和条件语句等基本语法。
我还学习了Matlab的矩阵操作和向量化计算的优势。
通过实例演示,我发现Matlab在处理大规模数据时具有高效性和便捷性。
实验二:数据可视化数据可视化是Matlab的重要应用之一。
在本实验中,我学习了如何使用Matlab绘制各种图表,如折线图、散点图、柱状图和饼图等。
我了解了Matlab 的绘图函数和参数设置,并通过实例展示了如何将数据转化为直观的图形展示。
数据可视化不仅可以帮助我们更好地理解数据,还可以用于数据分析和决策支持。
实验三:数值计算和优化Matlab在数值计算和优化方面具有强大的功能。
在本实验中,我学习了Matlab 的数值计算函数和工具箱,如数值积分、微分方程求解和线性代数运算等。
通过实例研究,我发现Matlab在求解复杂数学问题和优化算法方面具有出色的性能。
这对于科学研究和工程设计中的数值分析和优化问题非常有用。
实验四:图像处理和模式识别Matlab在图像处理和模式识别领域也有广泛的应用。
在本实验中,我学习了Matlab的图像处理工具箱和模式识别算法。
通过实例演示,我了解了如何使用Matlab进行图像滤波、边缘检测和特征提取等操作。
我还学习了一些常见的模式识别算法,如支持向量机和神经网络等。
这些技术在计算机视觉和模式识别中具有重要的应用价值。
实验五:信号处理和系统建模Matlab在信号处理和系统建模方面也有广泛的应用。
在本实验中,我学习了Matlab的信号处理工具箱和系统建模工具。
matlab实验报告总结

matlab实验报告总结1.求一份matlab的试验报告计算方法试验报告3【实验目的】检查各种数值计算方法的长期行为【内容】给定方程组x'(t)=ay(t),y'(t)=bx(t), x(0)=0, y(0)=b的解是x-y 平面上的一个椭圆,利用你已经知道的算法,取足够小的步长,计算上述方程的轨道,看看那种算法能够保持椭圆轨道不变。
(计算的时间步长要足够多)【实验设计】用一下四种方法来计算:1. Euler法2. 梯形法3. 4阶RK法4. 多步法Adams公式【实验过程】1. Euler法具体的代码如下:clear;a=2;b=1;A=[0 a; -b0];U=[];u(:,1)=[0;b];n=1000000;h=6*pi/n;fori=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5; u(:,i+1)=u(:,i)+h*A*u(:,i);endt=1:n+1;subplot(1, 2,1);plot(1:n,delta);gridon;subplot(1,2,2);plot(u(1,:),u(2,:));gridon;max(abs(delta-ones(1,length(delta))));结果如下:2. 梯形法具体的代码如下:clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=300;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;v1=u(:,i)+h*A*u(:,i);v2=u(:,i)+h*A*(u(:,i)+v1)/2;1u(:,i+1)=u(:,i)+h*A*(u(:,i)+v2)/2;endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下 3. 4阶RK法clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=70;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;k1=A*u(:,i); k2=A*(u(:,i)+h/2*k2); k3=A*(u(:,i)+h*k3); k4=A*(u(:,i)+h*k3); u(:,i+1)=u(:,i)+h/6*(k1+2*k2+2*k3+k4);endt=1:n+1 ;subplot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:4. 多步法Adams公式clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=200;h=6*pi/n;u(:;2)=u(u,1)+h*A*u(:,1);u(:;3)=u(u,2)+h/2*A*(3*u(:,2)-u(:,1));u(:;4)=u(u,3)+h/12*A*(23*u(:,3)-16*u(:,2)+5*u(:, 1)); delta(1)=((u(1,1)/a)^2+(u(2,1)/b^2)^0.5 delta(2)=((u(1,2)/a)^2+(u(2,2)/b^2)^0.5delta(3)=((u(1,3)/a)^2+(u(2,3)/b^2)^0.5for i=4:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;u(:,i+1)=u(:,i)+h/24*A*(55*u(:,i)-59*u(:,i-1)+37 *u(:,i-1)+37*u(:,i-2)-9*u(:,i-3));endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:【实验分析】通过这几种方法对比,发现最为稳定的是多步法Adams公式和4阶RK法,其次是梯形法,而欧拉法最为不稳定。
matlab 实验报告

matlab 实验报告Matlab 实验报告引言:Matlab(Matrix Laboratory)是一种强大的科学计算软件,它为科学家、工程师和研究人员提供了一个强大的计算环境。
本实验报告旨在介绍我对Matlab的实验结果和使用体验,以及对其优点和局限性的思考。
一、Matlab的基本功能和特点Matlab是一种高级编程语言和开发环境,它具有广泛的数学和工程计算功能。
通过Matlab,我可以进行矩阵运算、数值计算、数据可视化、算法开发等一系列操作。
Matlab的语法简洁易懂,可以快速实现复杂的计算任务。
此外,Matlab还提供了大量的工具箱,如信号处理、控制系统、图像处理等,使得各种领域的科学研究和工程应用变得更加便捷。
二、实验结果与应用案例在本次实验中,我选择了一个经典的数值计算问题——求解非线性方程。
通过Matlab的数值计算能力,我可以使用不同的迭代方法来求解方程的根。
在实验中,我使用了牛顿迭代法、二分法和割线法来求解方程。
通过对比这些方法的收敛速度和精度,我得出了不同方法的优缺点。
在实际应用中,Matlab可以广泛应用于信号处理、图像处理、数据分析等领域。
例如,在信号处理中,我可以使用Matlab的信号处理工具箱来进行滤波、频谱分析等操作。
在图像处理中,我可以利用Matlab的图像处理工具箱进行图像增强、边缘检测等操作。
这些应用案例充分展示了Matlab在科学计算和工程应用中的重要性和灵活性。
三、Matlab的优点1. 强大的计算功能:Matlab提供了丰富的数学和工程计算函数,可以高效地进行复杂的计算任务。
2. 简洁的语法:Matlab的语法简洁易懂,使得编程变得更加高效和便捷。
3. 丰富的工具箱:Matlab提供了大量的工具箱,覆盖了各种领域的科学计算和工程应用需求。
4. 可视化能力强:Matlab提供了丰富的绘图函数,可以直观地展示数据和计算结果。
四、Matlab的局限性1. 高昂的价格:Matlab是一款商业软件,其价格较高,对于个人用户而言可能不太容易承受。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Matlab实验报告院系名称:信息科学与工程学院专业班级:通信工程1303指导老师:陈科文,支国明,张金焕,周扬学生姓名:学号:目录实验一熟悉MATLAB环境 (3)实验二数值数组创建、应用及可视化 (7)实验三字符串数组的使用、简单脚本文件和函数的编写 (12)实验四数据可视化方法 (22)实验一一、实验目的1 .熟悉MATLAB 主界面,并学会简单的菜单操作;2 .学会简单的矩阵输入与信号输入;3 .掌握部分绘图函数。
二、实验内容及要求1.用户工作目录和当前目录的建立和设置;2.熟悉简单的矩阵输入;3.常用基本命令的使用;4.基本序列运算;三、实验步骤及结果测试1.用户工作目录和当前目录的建立和设置2.熟悉简单的矩阵输入四、实验体会及心得这是我第一次做Matlab实验,一打开页面就有很多地方都不明白,因为页面大部分是英文,由于上课时对Matlab操作页面还有一些记忆,感觉还可以:本次试验是我对Matlab这门课有了一定的了解,对矩阵在Matlab中的运用也有了初步的认识。
实验二一、 实验目的1 .掌握二维数组的创建、寻访,区分数组运算与矩阵运算的区别;2 .掌握标准数组生成函数和数组构造技法;3 .进一步熟悉 M 脚本文件编写的方法和技巧。
二、实验内容及要求1.数组的创建和寻访 ;2.编写如图所示波形的 MATLAB 脚本文件,图中虚线为正弦波,要求它分别在21 及22处削顶。
三、实验步骤及结果测试仿照问题 1 中方法找出数组⎥⎦⎤⎢⎣⎡----=5311342024A 中所有绝对值大于 3 的元素。
程序如下图:运行指令 rand(‘state ’,11),A=rand(3,10000);B=(A>0.5);C=2*B -1;首先预测( C*C’)/100 的运行结果,然后再在机器上验证。
(本方法提供了产生通信等仿真中常需若干独立的双随机码的方法原型。
)A :B :C :编写如图所示波形的 MATLAB 脚本文件,图中虚线为正弦波,要求它分别在21 及22处削顶。
四、实验体会及心得在用matlab解决绘图问题时候,一定要有自己的想法,利用数学思想再利用matlab工具,设置函数图像的具体属性时,要注意语句在程序中的位置。
实验三一、 实验目的1 .掌握字符串数组的创建和构造方法及常用字符串函数的使用;2 .熟练掌握 MATLAB 控制流的使用方法;3 .熟悉 M 脚本文件、函数文件的编写方法和技巧。
二、实验内容及要求1.串数组的创建和寻访;2.脚本文件实现()π30,3cos 14.0≤≤-=t t e y t ,并在图上标出图名和极大值点坐标;3.编程实现分别用 for 或 while 循环语句计算: 63263022212++++=∑==Λi i K的程序,并给出运行结果。
此外,实现一种避免使用循环的的计算程序; 4 .函数文件。
三、实验步骤及结果测试1.2.3.4.5.6.四、实验体会及心得Matlab作为一个强大的工具,方便快捷,操作高效,我们要熟练利用并且掌握基本语句输入,一定要注意细节。
实验三一、 实验目的1 .掌握曲线绘制的基本技法和指令,会使用线形、色彩、数据点标记表现不同数据的特征,掌握生成和运用标识注释图形;2 .进一步掌握函数编写及数据可视化方法。
二、实验内容及要求1.仿照运行,体会数据可视化方法。
(1) .已知12,,1,0Λ=n ,()16--n y ,运行下面程序,体会离散数据可视化方法。
说明:plot 和stem 指令均可以实现离散数据的可视化,但通常plot 更常用于连续函数中特殊点的标记;而stem 广泛运行与数字信号处理中离散点的图示。
用户在运行上面例程时会发现在命令窗口出现警告:Warning: Divide by zero !即警告程序中出现非零数除以0的指令。
MATLAB 对于这种情况并不中止程序只是给该项赋值为inf 以做标记。
(2).下面时用图形表示连续调制波形()()t t y 9sin sin =,仿照运行,分析表现形式不同的原因。
三、实验步骤及结果测试1.2cleart1=(0:11)/11*pi; y1=sin(t1).*sin(9*t1);t2=(0:100)/100*pi; y2=sin(t2).*sin(9*t2);subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),title('子图(1)'); subplot(2,2,2),plot(t2,y2,'r.'),axis([0,pi,-1,1]),title('子图(2)'); subplot(2,2,3),plot(t1,y1,t1,y1,'r.') axis([0,pi,-1,1]),title('子图(3)'); subplot(2,2,4),plot(t2,y2) axis([0,pi,-1,1]),title('子图(4)')3代码:x=0:0.0001:pi;y=sin(x).*sin(9*x);y1=sin(x);y2=-sin(x);x1=0:pi/9:pi;y3=0;plot(x,y,x,y1,'r:',x,y2,'r:',x1,y3,'bo'); axis([0,pi,-1,1]);M文件function [y,n]=sigadd(x1,n1,x2,n2)n=(min(n1(1),n2(1)):max(n1(end),n2(end)));y1=zeros(1,length(n));y2=y1;y1(find((n>=n1(1))&(n<=n1(end))==1))=x1;y2(find((n>=n2(1))&(n<=n2(end))==1))=x2;y=y1+y2;end四、实验体会及心得在用matlab解决绘图问题时候,一定要有自己的想法,利用数学思想再利用matlab工具.设置函数图像的具体属性时,要注意语句在程序中的位置,一定要注意细节,不要因为小错误,导致绘图出错。
实验四数据可视化方法[实验目的]1 .掌握曲线绘制的基本技法和指令,会使用线形、色彩、数据点标记表现不同数据的特征,掌握生成和运用标识注释图形。
2 .进一步掌握函数编写及数据可视化方法。
[实验原理]MATLAB 提供了相当强大的可视化指令,通过这些指令,我们可以非常简单地实现数据的可视化。
首先我们来看离散数据和离散函数的可视化方法。
对于离散实函数,当以递增(或递减)次序取值时,根据函数关系可以求得同样数目的,当把这两组向量用直角坐标中的点次序图示时,就实现了离散函数的可视化。
当然这种图形上的离散序列所反映的只是某确定的有限区间内的函数关系,不能表现无限区间上的函数关系。
通常我们可以采用plot或者stem来实现。
只是需要注意的是使用plot时,需要使用星号或者点等标识来表示数据点,比如plot(xn ,yn ,’r*’,’MarkerSize’,20),就表示用字号20 的红色星点来标识数据点, 此时为了便于观察,通常随后加上一条语句“grid on”,即给图形加上坐标方格。
而采用stem 标识数据点的格式是stem(xn ,yn ) 。
连续函数的可视化与离散函数可视化类似,也必须先在一组离散自变量上计算相应的函数值,并把这一组“数据点”用点图示。
但这些离散的点不能表现函数的连续性。
为了进一步表示离散点之间的函数函数情况,MATLAB有两种常用处理方法:一是对区间进行更细的分割,计算更多的点,去近似表现函数的连续变化;或者把两点用直线连接,近似表现两点间的(一般为非线性的)函数形状。
但要注意,倘若自变量的采样点不足够多,则无论哪种方法都不能真实地反映原函数。
对于二维数据,常用指令仍旧是plot。
对于离散数据,plot指令默认处理方法是:自动地把这些离散数据用直线(即采用线性插值)连接,使之成为连续曲线。
对于三维图形的表示,通常有plot3等指令。
说明:步骤1、3是最基本的绘图步骤,一般来说,由这两步所画出的图形已经具备足够的表现力。
至于其他步骤,并不完全必需。
用户可根据自己需要改变上面绘图步骤,并不必严格按照执行。
步骤2一般在图形较多情况下使用,此时需要指定图形窗、指定子图。
步骤8涉及图柄操作,需要对图形对象进行属性设置,较为复杂。
MATLAB 提供了交互式图形编辑功能,可方便地对图形精细修饰。
plot 等绘图指令的典型调用格式为:plot(t,y,’s’) 。
其中s是用来指定线型、色彩、数据点形的选项字符串。
S的合法取值如下所示,格式形如’r+’。
如果缺省,此时线型、色彩、数据点形将由MATLAB默认设置确定。
plot进一步的使用可参看帮助文档。
s可用来指定的线形分别有:“-”实线,“:”虚线,“-.”点划线,“--”双划线。
s可用来指定的色彩分别有:b-蓝,g-绿,r -红,c-青,y-黄,w-白,k-黑。
s可用来指定的数据点形有:“.”实心黑点,“+”十字符,“^”朝上三角符,“v”朝下三角符,“d”菱形符,“p”五角星符等。
常用的坐标控制指令axis使用是最多的,比如axis([x1 ,x2 ,y1 ,y2])可人工设定坐标范围,axis off可取消轴背景,axis equal横纵轴采用等长刻度等。
其他使用见帮助。
需要特别指出的是,当遇到在已经存在的图上再绘制一条或多条曲线,可使用hold on 指令,可保持当前轴及图形保持不被刷新,并准备接收此后绘制的新曲线,hold off 则取消此功能。
对于想画多个独立的图形,则会用到figure(n)指令,这里n为整数,可顺序从1向后排。
如果想在特定图形中布置几幅独立的子图,则会用到subplot(m,n,k) ,即在(m×n)幅子图中的第k幅成为当前图;subplot(‘position’,[left botton width height]) ,表示在指定位置上开辟子图,并成为当前图。
使用clf指令可清除图形窗的内容。
另外MATLAB还提供了ginput、gtext、legend等交换指令。
[x,y]=ginput(n),可用鼠标从二维图形上获取n个点的数据坐标(x,y),该指令只适用于二维图形, 在数值优化、工程设计中十分有用。
通常在使用前先对图进行局部放大处理。
[实验内容]一.仿照运行,体会数据可视化方法。
1 .已知,,运行下面程序,体会离散数据可视化方法。
说明:plot和stem指令均可以实现离散数据的可视化,但通常plot更常用于连续函数中特殊点的标记;而stem广泛运行与数字信号处理中离散点的图示。