《Matlab数据处理》PPT课件.ppt_第1页
《Matlab数据处理》PPT课件.ppt_第2页
《Matlab数据处理》PPT课件.ppt_第3页
《Matlab数据处理》PPT课件.ppt_第4页
《Matlab数据处理》PPT课件.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Matlab数据处理基础 王龑南京大学 将下列函数在 2 2 适当离散化 计算并画图 break 中断break中断for while循环语句的执行 在嵌套循环结构中 break从最里层循环退出 continue 继续与for while循环语句一起使用 结束本次循环 即跳过循环体中尚未执行的语句 接着进行下一次是否执行循环的判断 内容提要 画图M文件Fourier变换基本统计函数几个例子 单窗口多曲线分图绘图 subplot 1 3 1 plot t y1 subplot 1 3 2 plot t y2 subplot 1 3 3 plot t y3 subplot 3 1 1 plot t y subplot 3 1 2 plot t y3 subplot 3 1 3 plot t y2 多窗口绘图 figure n 创建窗口函数 n为窗口顺序号 t 0 pi 100 2 pi y sin t y1 sin t 0 25 y2 sin t 0 5 plot t y 自动出现第一个窗口figure 2 plot t y1 在第二窗口绘图figure 3 plot t y2 在第三窗口绘图 图形加注功能 将标题 坐标轴标记 网格线及文字注释加注到图形上 这些函数为 title 给图形加标题xlable 给x轴加标注ylable 给y轴加标注text 在图形指定位置加标注gtext 将标注加到图形任意位置gridon off 打开 关闭坐标网格线legend 添加图例axis 控制坐标轴的刻度注 也可以直接在figure窗口进行鼠标操作 例 t 0 0 1 10 y1 sin t y2 cos t plot t y1 r t y2 b x 1 7 pi 1 6 pi y 0 3 0 8 s sin t cos t text x y s title 正弦和余弦曲线 legend 正弦 余弦 xlabel 时间t ylabel 正弦 余弦 gridaxissquare axis的用法还有 axis xminxmaxyminymax 用行向量中给出的值设定坐标轴的最大和最小值 如axis 2205 axisequal 将两坐标轴设为相等axison off 显示和关闭坐标轴的标记 标志axisauto 将坐标轴设置返回自动缺省值 绘制函数图函数 fplot的调用格式 fplot fun lims 绘制函数fun在x区间lims xminxmax 的函数图 fplot fun lims s 以指定线形绘图 fplot sin x tan x cos x 2 pi 11 11 符号函数的简易绘图函数 ezplot的调用格式 ezplot f 这里f为包含单个符号变量x的符号表达式 在x轴的默认范围 2 pi2 pi 内绘制f x 的函数图ezplot f xmin xmax 给定区间ezplot f xmin xmax figure n 指定绘图窗口绘图 ezplot sin x ezplot sin x cos y 4 pi4 pi figure 2 特殊二维绘图函数 bar 绘制直方图polar 绘制极坐标图hist 绘制统计直方图stairs 绘制阶梯图stem 绘制火柴杆图rose 绘制统计扇形图comet 绘制彗星曲线 errorbar 绘制误差棒图compass 复数向量图 罗盘图 feather 复数向量投影图 羽毛图 quiver 向量场图area 区域图pie 饼图convhull 凸壳图scatter 离散点图 例 绘制阶梯曲线x 0 pi 20 2 pi y sin x stairs x y 例 绘制极坐标绘图t 0 2 pi 90 2 pi y cos 4 t polar t y 例 绘制火柴杆绘图t 0 0 2 2 pi y cos t stem y 例 绘制直方图t 0 0 2 2 pi y cos t bar y 例 绘制彗星曲线图t pi pi 500 pi y tan sin t sin tan t comet t y a rand 200 1 b rand 200 1 c rand 200 1 scatter a b 100 c p 三维线图 plot3 基本的三维图形指令调用格式 plot3 x y z x y z是长度相同的向量plot3 X Y Z X Y Z是维数相同的矩阵plot3 x y z s plot3 x1 y1 z1 s1 x2 y2 z2 s2 二维图形的所有基本特性对三维图形全都适用 定义三维坐标轴大小axis xminxmaxyminymaxzminzmax gridon off 绘制三维网格子图和多窗口也可以用到三维图形中 例 绘制三维线图t 0 pi 50 10 pi plot3 t sin t cos t r 三维网格图 mesh 三维网线绘图函数调用格式 mesh z z为n m的矩阵 x与y坐标为元素的下标mesh x y z x y z分别为三维空间的坐标位置 例 矩阵的三维网线图z rand 6 0 88080 07290 41680 76940 37750 47760 33810 71010 09640 63520 38260 70860 18950 87910 67470 89650 68760 23800 74310 35940 56260 87840 12170 39100 71890 08990 81300 48650 07680 97590 87920 16100 87820 11310 14330 6288z round z 100100010101011110101100101001101001mesh z mesh z 三维曲面图 surf 三维曲面绘图函数 与网格图看起来一样与三维网线图的区别 网线图 线条有颜色 空挡是无色的曲面图 线条是黑色的 空挡有颜色 把线条之间的空挡填充颜色 沿z轴按每一网格变化 调用格式 surf x y z 绘制三维曲面图 x y z为图形坐标向量例 X Y Z peaks 30 peaks为matlab自动生成的三维测试图形surf X Y Z surfc X Y Z 带等高线的曲面图 X Y Z peaks 30 surfc X Y Z surfl X Y Z 被光照射带阴影的曲面图 X Y Z peaks 30 surfl X Y Z 视角 函数view az el az 方位角 el 俯视角省缺值为 az 37 5 el 30例 观察不同视角的波峰图形z peaks 40 subplot 2 2 1 mesh z subplot 2 2 2 mesh z view 15 60 subplot 2 2 3 mesh z view 90 0 subplot 2 2 4 mesh z view 7 10 水线图 waterfall waterfall peaks 30 matlab的工作模式 指令驱动模式 通常matlab以指令驱动模式工作 即在matlab窗口下当用户输入单行指令时 matlab立即处理这条指令 并显示结果 这就是matlab命令行方式 命令行操作时 matlab窗口只允许一次执行一行上的一个或几个语句 命令行方式程序可读性差 而且不能存储 对于复杂的问题 应编写成能存储的程序文件 m文件模式将matlab语句构成的程序存储成以m为扩展名的文件 然后再执行该程序文件 这种工作模式称为程序文件模式 程序文件不能在指令窗口下建立 因为指令窗口只允许一次执行一行上的一个或几个语句 m文件 m文件的类型是普通的文本文件 我们可以使用系统认可的文本文件编辑器来建立m文件 具体的创建方法 在matlab命令窗口点击file菜单new m file 也可直接点file下面的新建图标 m文件它只是一个简单的ASCII码文本文件 执行程序时逐行解释运行程序 matlab是解释性的编程语言 m文件有两类 独立的m文件 称脚本m文件 可调用m文件 称函数m文件m文件包括两部分 注释文件和程序文件 脚本m文件脚本m文件实际上是一串指令的集合 与在命令窗口逐行执行文件中的所有指令 其结果是一样的 没有输入输出参数 函数m文件 需要输入变量 返回输出变量matlab用户可以根据需要编辑自己的m文件 它们可以像库函数一样方便的调用 从而极大地扩展了matlab的能力 对于某一类特殊问题 如创建了许多m函数文件 则可形成新的工具箱 这种用matlab语言创建定义新的matlab函数的功能 正体现了matlab语言强大的扩展功能 函数m文件的格式 function返回变量 函数名 输入变量 注释说明语句段程序语句段特定规则 函数m文件第一行必须以单词function作为引导词 必须遵循如下形式 function m文件的文件名最好是 m程序中的变量均为局部变量 不保存在工作空间中 其变量只在函数运行期间有效 nargin和nargout是库函数 可以检查m文件的输入和输出参数的个数如nargin sin 在函数m文件中 可以用varargin和varargout实现可变长度的输入和输出参数个数 注意varargin是cell型的 函数M文件例 functions test varargin s 0 forn 1 length varargin 1 s s varargin 1 n end调用test 1 10 编写脚本m文件 计算1到100的平方和 Fourier变换 一般信号都是以时间 幅度的形式记录的 时间序列 对它的分析称为时域分析Fourier变换是把时间序列的不同频率成分提取出来 利用Fourier基底的正交归一和完备性 将信号表示成频率 幅度的形式 对它的分析称为频域分析 Fourier变换 Fourier变换 Matlab中的离散fourier变换fft ifft fft2 ifft2 fftn ifftnY fft x 对向量x进行离散fourier变换 若x是矩阵则对每一列分别操作Y fft x n 用n限制x的长度 若x的长度小于n则后面补0 若x的长度大于n 则只对前面n个数进行变换helpfft 注意matlab中fft的定义 例 fft的应用 t 0 1 512 4 1 512 采样时间点n randn 1 2048 相应点的噪声s 0 3 sin 2 pi 150 t 相应点的信号d n s 实际采集的数据subplot 2 1 1 plot t 1 500 d 1 500 x fft d 数据的DFTsubplot 2 1 2 plot 0 1 4 256 1 4 abs x 1 1024 直方图 n y hist x k 输入 x是原始数据行向量 k是需要等分的区间数返回值 n是频数行向量 y是区间中点行向量hist x k 输入数据意义同上 返回直方图hist x 此时k取默认值10 标准正态分布 a randn 1 10000 hist a 100 holdonx 5 0 1 5 plot x 2 pi 1 2 800 exp x 2 2 r 画0到1均匀分布的直方图 要求 产生10000个在 0 1 上均匀分布的随机数 直方图分5个区间 常用命令 mean均值 median中位数 range极差 最大值与最小值之差 std标准差 var方差 cov协方差生成10000个均值是5 方差是10的随机数 并用上面命令检验实际的均值和方差 用蒙特卡罗法计算圆周率 n 50000 x rand 2 n k 0 fori 1 nifx 1 i 2 x 2 i 2 1k k 1 endendp 4 k n 用蒙特卡罗法计算积分 用蒙特卡罗法计算积分 a rand 2 10000 x a 2 sin a 1 sum x 10000检验1 cos 1 分段线性插值 Y interp1 x0 y0 x helpinterp1helpspline shgclfresetset gcf color white menubar none numbertitle off name FractalFern x 5 5 h plot x 1 x 2 darkgreen 02 30 set h markersize 1 color darkgreen erasemode none axis 33010 axisoffstop uicontrol style toggle string stop background white drawnowp 85 92 991 00 A1 85 04 04 85 b1 0 1 6 A2 20 26 23 22 b2 0 1 6 A3 15 28 26 24 b3 0 44 A4 00 0 16 cnt 1 tic while ge

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论