学生姓名: 专业班级: 指导教师: 工作单位: 题 目:MATLAB应用课程设计
——-利用MATLAB仿真软件进行绘图
初始条件:
1. Matlab软件;
2. 先修课程:数字信号处理;
要求完成的主要任务:
设定(X1 Y1)、(X2 Y2)、(X3 Y3)、(X4 Y4)、(X5 Y5)五个函数,在同一幅 图上用不同的线条、颜色绘制五条曲线,并分别对五条曲线进行命名,并添加坐标标 志、图名函数和网格,并按三种格式进行保存。
1、画出程序设计框图,编写程序代码,上机运行调试程序,记录实验结果(含计算结果和图表等),并对实验结果进行分析和总结;
2、课程设计说明书按学校统一规范来撰写,要求逻辑清晰、层次分明、书写整洁具体包括:
(1)目录; (2)摘要(中英文);
(3) 正文(包括①设计项目要求与说明 ②软件流程分析 ③调试分析 ④实验数据分析 ⑤答辩 ⑥成绩评定); (4)程序运行结果及图表分析和总结; (5)附录(图纸.程序清单或软盘);
时间安排:方案设计 1天;软件设计 2天; 系统调试 1天; 答辩 1天; 合计 5天。
指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日
目录
摘要 ............................................................... I Abstract ........................................................... II 1Matlab概述 ........................................................ 1
1.1简介 ........................................................ 1 1.2应用 ........................................................ 1 1.3 设计环境 ................................................... 1 2引言 .............................................................. 2
2.1设计要求 .................................................... 2 2.2操作流程 .................................................... 3 2.3理论分析 .................................................... 3 3程序设计及运行调试 ............................................... 8
3.1绘制函数图像 ............................................... 8 3.2程序分析 .................................................... 9 3.3实验结果分析 ............................................... 9 4心得体会 ......................................................... 12 5参考文献 ......................................................... 14
武汉理工大学≤MATLAB应用≥课程设计说明书
摘要
MATLAB 是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB 的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用 MATLAB 来解算问题要比用 C,FORTRAN 等语言完相同的事情简捷得多。
本文主要内容是利用MATLAB仿真软件进行绘图,从而得到在同一幅图上用不同的线型、颜色绘制五条曲线,并分别对五条曲线进行命名,添加坐标标志、图名函数和网格,并按三种格式进行保存。
首先,本文介绍如何利用MATLAB工具箱了绘制基本函数图形。
然后,本文对于要解决的实验任务,介绍了如何构建思路及方案分析。 另外,本文对于利用Matlab软件绘图来保存图形的三种格式给予了一定的介绍,以及添加网格和坐标标志等也给出了方法。
关键字:绘图;线型;颜色;网格.
I
武汉理工大学≤MATLAB应用≥课程设计说明书
Abstract
MATLAB is Matrix lab (Matrix Laboratory) of idea. In addition to have excellent numerical computation ability outside, it also provides the professional level of symbols calculation, word processing, visualized modeling simulation and real time control etc. Function. MATLAB unit is the basic data of the matrix, its instruction expression and mathematics, engineering in the form of common is very similar, so MATLAB to the solution to problems than with C, FORTRAN language such as the same things much more simple.
This paper mainly content is the use of MATLAB simulation software for drawing, thus obtains in the same picture in different lines, color rendering five curve, and respectively on five curve of naming, add coordinate marks, title of the function and the grid, and according to the three kinds of format for preservation.
First of all, this paper introduces how to use MATLAB toolbox drawing the basic function graphic.
Then, in this paper to solve the tasks, this paper introduces how to construct and scheme analysis.
In addition, this paper to using Matlab software drawing to save graphic three format to give a presentation, and add the grid and coordinate mark and so on also gives the method.
Key words: drawing; Linear; Color; The grid. .
II
武汉理工大学≤MATLAB应用≥课程设计说明书
1 Matlab概述
1.1简介
MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
1.2应用
MATLAB 产品族可以用来进行以下各种工作: ●数值分析 ●数值和符号计算 ●工程与科学绘图 ●控制系统的设计与仿真 ●数字图像处理技术 ●数字信号处理技术 ●通讯系统设计与仿真 ●财务与金融工程
1.3 设计环境
1
武汉理工大学≤MATLAB应用≥课程设计说明书
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB 函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。
随着其功能的日益完善,MATLAB 已经发展成为适合多学科,多种工作平台的功能强大大大型软件。在国外高校, MATLAB 已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB 被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,MATLAB 一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在 MATLAB 里找到合适的功能。
另一方面,正如同 FORTRAN 和 C 等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一 样,被称作为计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中出来。MATLAB 用更直观的,符合人们思维习惯的代码,代替了C 和 FORTRAN 语言的冗长代码,给用户带来的是最直观,最简洁的程序开发环境。使得其迅速普及,并显示出旺盛的生命力。
2引言
2.1设计要求
2.1.1在同一幅图上用不同的线条、颜色绘制(X1 Y1)、(X2 Y2)、(X3 Y3)、(X4 Y4)、(X5 Y5)五个函数的曲线。
2.1.2分别对五条曲线进行命名,并添加坐标标志、图名函数和网格,并且按三种格式进行保存。
2
武汉理工大学≤MATLAB应用≥课程设计说明书
2.2操作流程
开始
结束 分析总结 应用绘图函数作图 程序的运行调试 编写利用绘图参数控制plot命令来控制曲线线型﹑颜色及图形标住函数title、xlabel、ylabel、grid的程序代码 2.3理论分析
一、 MATLAB通用图形函数命令 命令1 figure
功能 创建一个新的图形对象。图形对象为在屏幕上单独的窗口,在窗口中可以输出图形。
用法 figure 用缺省的属性值创建一个新的图形对象。
命令2 subplot
功能 生成与控制多个坐标轴。把当前图形窗口分隔成几个矩形部分,不同的部分是按行方向以数字进行标号的。每一部分有一坐标轴,后面的图形输出于当前的部分中。
3
武汉理工大学≤MATLAB应用≥课程设计说明书
用法 subplot(m,n,p) 将一图形窗口分成m*n个小窗口,在第p个小窗口中创建一坐标轴。则新的坐标轴成为当前坐标轴。若p为一向量,则创建一坐标轴,包含所有罗列在p中的小窗口。 命令3 hold
功能 保持当前图形窗口中的图形。该命令是决定是否在当前坐标轴中只能增加新的图形对象还是覆盖原有图形对象。
用法 hold on 保留当前图形与当前坐标轴的属性值,后面的图形命令只能在当前存在的坐标轴中增加图形。但是,当新图形的数据范围超出了当前坐标轴的范围,则命令会自动地改变坐标轴的范围,以适应新图形。
hold off 在画新图形之前,重新设置坐标轴的属性为缺省值。
命令4 axis
功能 坐标轴的刻度与外在显示
用法 axis([xmin xmax ymin ymax]) 设置当前坐标轴的x-轴与y-轴的范围。
命令5 close
功能 关闭指定的图形窗口。 用法 close 关闭当前的图形窗口。
二、 MATLAB绘图参数控制 命令1 plot
功能 这是最基本、最常用的绘图函数,用于绘制线性二维图。有多条曲线时,循环使用由坐标轴颜色顺序属性定义的颜色,以区别不同的曲线;之后再循环使用由坐标轴线型顺序属性定义的线型,以区别不同的曲线。
plot 作图时,可以通过四个参数选择控制曲线的类型。 1.线型(4种)
定义符 线型 - 实线(缺省值) -- 划线 : 点线 -. 点划线
4
武汉理工大学≤MATLAB应用≥课程设计说明书
2.线条宽度
指定线条的宽度,取值为整数(单位为像素点) 例如:plot( x, y, ‘linewidth’, 4 ) 3.颜色(8种)
定义符 颜色 定义符 颜色 R(red) 红色 M(magenta) 品红 G(green) 绿色 y(yellow) 黄色 b(blue) 兰色 k(black) 黑色 c(cyan) 青色 w(white) 白色 4.标记类型(13种)
定义符 类型 定义符 类型 定义符 类型 + 加号 d 棱形 s 正方形 o(字母) 小圆圈 ^ 上三角形 h 正六角星 * 星号 v 下三角形 P 正五角星 . 实点 > 右三角形 x 交叉号 < 左三角形
三、MATLAB图形标住函数
命令1 title
功能 给当前轴加上标题。每个axes图形对象可以有一个标题。标题定位于axes的上方正。
用法 title('string') 在当前坐标轴上方正放置字符串string作为标题。
命令2 xlabel、ylabel
功能 给x、y轴贴上标签
用法 xlabel('string')、 ylabel(‘string’) 给当前轴对象中的x、y轴贴标签。
5
武汉理工大学≤MATLAB应用≥课程设计说明书
命令3 grid
功能 给二维或三维图形的坐标面增加分隔线。 用法 grid on 给当前的坐标轴增加分隔线。 grid off 从当前的坐标轴中去掉分隔线。 grid 转换分隔线的显示与否的状态。 命令4 legend
功能 在图形上添加图例。该命令对有多种图形对象类型(线条图,条形图,饼形图等)的窗口中显示一个图例。对于每一线条,图例会在用户给定的文字标签旁显示线条的线型,标记符号和颜色等。
用法 legend('string1', 'string2',„, pos) 用指定的文字string在当前坐标轴中对所给数据的每一部分显示一个图例,在指定的位置pos放置这些图例。
命令5 gtext
功能 在当前二维图形中用鼠标放置文字。当光标进入图形窗口时,会变成一个大十字,表明系统正等待用户的动作。
用法 gtext('string') 当光标位于一个图形窗口内时,等待用户单击鼠标或键盘。若按下鼠标或键盘,则在光标的位置放置给定的文字“string”
命令6 text
功能 在当前轴中创建text对象。函数text是创建text图形句柄的低级函数。可用该函数在图形中指定的位置上显示字符串。
用法 text(x,y,'string') 在图形中指定的位置(x,y)上显示字符串string。 命令7 zoom
功能 对二维图形进行放大或缩小。放大或缩小会改变坐标轴范围。
用法 zoom on 打开交互式的放大功能。当一个图形处于交互式的放大状态时,有两种方法来放大图形:
方法1:用鼠标左键(右键)单击坐标轴内的任意一点,可使图形放大(缩小)一倍,这一操作可进行多次,直到matlab的最大(还原图形)显示为止。
方法2:用鼠标拖出要放大的部分,系统将放大选定的区域。
6
武汉理工大学≤MATLAB应用≥课程设计说明书
命令8 num2str, int2str
功能 将数字或整数转换为字符串,以便于图形标注。 用法 st = num2str(x) 将变量x值表示为字符串st。
st = int2str(x) 将变量x的整数部分表示为字符串st。
四、其他二维图形绘制函数
命令1 stairs
功能 画二维阶梯图,这种图对与时间有关的数字样本系统的作图很有用处。 用法 stairs(x, y) 结合x与y画阶梯图。其中要求x与y为同型的向量或矩阵。此外,x可以为行向量或为列向量,且y为有m=length(x)行的矩阵。
命令2 compass
功能 从原点画箭头图。箭头图为一显示起点为笛卡儿坐标系中的原点的二维或三维方向或向量的图形,同时在坐标系中显示圆形的分隔线。
用法 compass(x, y) 参量x与y为同型的n维向量,则命令显示n个箭头,箭头的起点为原点,箭头的位置为[x(i), y(i)]。
命令3 polar
功能 画极坐标图。该命令接受极坐标形式的函数rho=f(θ),在笛卡儿坐标系平面上画出该函数,且在平面上画出极坐标形式的格栅。
用法 polar(theta,rho) 用极角theta和极径rho画出极坐标图形。极角theta为从x轴到半径的单位为弧度的向量,极径rho为各数据点到极点的半径向量。
7
武汉理工大学≤MATLAB应用≥课程设计说明书
3程序设计及运行调试
3.1绘制函数图像
本文采用MATLAB 7.11.0(R2010b)设计。首先启动MATLAB,因为可以直接调用函数库,所以直接在Command Window 中写入命令,而不必新建M文件,这样既节约内存,又加快了程序运行速度。
设计程序如下: x=0:0.001*pi:3.2;
y1=3*x-2.5;
y2=exp(x)-5*x; y3=cos(10*x)+0.1*x.*x; y4=2*x.*sin(10*x); y5=5*atan(2*x-0.2*pi);
plot(x,y1,'-g',x,y2,'-.r',x,y3,':b',x,y4,'-m',x,y5,'-.c'); title('Matlab函数图象'); xlabel('x','fontweight','bold'); ylabel('y','fontweight','bold'); axis([-0.2, 1*pi+0.2, -7,10])
legend('3*x-2.5','exp(x)-5*x','cos(10*x)+0.1*x.*x','2*x.*sin(10*x)','5*atan(2*x-0.2*pi)');
grid on;
print(1,'-dtiff','F:\\1.tiff'); print(1,'-djpeg','F:\\1.jpeg');
print(1,'-dpng','F:\\1.png');
8
武汉理工大学≤MATLAB应用≥课程设计说明书
3.2程序分析
1.确定x的范围;
2.构造五个函数y1,y2,y3,y4,y5;
3.利用plot函数绘制不同线型不同颜色的曲线; 4.给所绘图像命名;
5.利用xlabel和ylabel设置坐标轴字体,大小; 6.设置当前坐标轴的x-轴与y-轴的范围; 7.在该函数图形上添加图例; 8.给当前的坐标轴增加分隔线; 9.用三种格式将函数图象保存在F盘。
3.3实验结果分析
观察上述实验图形可知,y1=3*x-2.5;y2=exp(x)-5*x;y3=cos(10*x)+0.1*x.*x;y4=2*x.*sin(10*x);y5=5*atan(2*x-0.2*pi);并且五个函数颜色不一,线型不同。达到预期实验目标,完成实验任务。
9
武汉理工大学≤MATLAB应用≥课程设计说明书
按照TIFF格式保存在F盘中:
按照JPEG格式保存在F盘中:
10
武汉理工大学≤MATLAB应用≥课程设计说明书
按照PNG格式保存在F盘中:
TIFF是Mac中广泛使用的图像格式,它的特点是图像格式复杂、存贮信息多。该格式有压缩和非压缩二种形式,其中压缩可采用LZW无损压缩方案存储。TIFF格式结构较为复杂,兼容性较差;
JPEG是一种很灵活的格式,文件尺寸较小,具有调节图像质量的功能,下载速度快,在网络和光盘读物上应用非常广泛;
PNG是目前保证最不失真的格式,它汲取了GIF和JPG二者的优点,存贮形式丰富,兼有GIF和JPG的色彩模式,采用无损压缩方式来减少文件的大小,显示速度很快,支持透明图像的制作;PNG的缺点是不支持动画应用效果。
对比上述三幅图片,可以看出三种保存格式各自的特点。
11
武汉理工大学≤MATLAB应用≥课程设计说明书
4心得体会
本次MATLAB的课程设计是我大学的第一次课程设计,所以做起来难免有些吃力。可以说这次课程设计让我付出了很多努力,但同时也反馈给我很多的收获与喜悦。具体来说,通过本次课程设计我了解到:
MATLAB 是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。使用 MATLAB,可以较使用传统的编程语言(如 C、C++ 和 Fortran)更快地解决技术计算问题。
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。
MATLAB 提供了很多用于记录和分享工作成果的功能。可以将我们自己的 MATLAB 代码与其他语言和应用程序集成,来分发我们的的 MATLAB 算法和应用。
MATLAB 还包含了各种数学、统计及工程函数,支持所有常见的工程和科算。 这些由数学方面的专家开发的函数是 MATLAB 语言的基础。这些核心的数学函数使用 LAPACK 和 BLAS 线性代数子例程库和 FFTW 离散傅立叶变换库。由于这些与处理器相关的库已针对 MATLAB 支持的各种平台进行了优化,因此其执行速度比等效的 C 或 C++ 代码的执行速度要快。MATLAB 提供了以下类型的函数,用于执行数算和数据分析:矩阵操作和线性代数,多项式和内插,傅立叶分析和筛选,数据分析和统计,优化和数值积分,常微分方程 (ODE),偏微分方程 (PDE)及稀疏矩阵运算。
MATLAB 可对包括双精度浮点数、单精度浮点数和整型在内的多种数据类型进行运算。附加的工具箱(单独提供)提供了专门的数学计算函数,用于包括信号处理、优化、统计、符号数学、偏微分方程求解以及曲线拟合在内的各个领域。
12
武汉理工大学≤MATLAB应用≥课程设计说明书
现在课程设计做完了,回想起来感觉还真不容易。但我最深的感触就是有的时候需要逼逼自己,人都是被逼出来的,有些东西只要逼逼自己就可能会做到的,就像有时成功就跟我们有一步之遥,我们去做了就成功了,我们选择放弃了,那么首先你已经失败了!你放弃了,什么也没学到,哪怕是那么一点点小小的感触,我们都不会有,因为你只是路人一个,没有停留;一个人的力量是有限的,但知识是无穷的,要想把课程设计做的更好,就要学会参考一定的资料,吸取别人的经验,让自己和别人的思想有机的结合起来,得出属于我们自己的灵感与方案。
通过这近一个星期的磨练,我再一次学到了很多很多关于matlab的知识,也让我更加紧迫的意识到我知识的匮乏性,意识到自己身上的不足,不论是学习还是生活中,我们都要学会思考,解决问题,进而更加激励我不停的汲取知识,用更加丰富的知识来充实我的头脑,来充实我的人生。我不要做语言的巨人,行动的矮子。我相信,只要肯努力肯付出,最后的最后,一定会成功。最后感谢学校给我们安排课程设计的机会,真的使我学到了很多知识,包括学习上的,也包括生活中的。
13
武汉理工大学≤MATLAB应用≥课程设计说明书
5参考文献
[1]Vinay K.Ingle.《数字信号处理及其MATLAB实现》 电子工业出版社,1998
[2]Sanjit K.Miltra.《Digital Signal Processing Laboratory Using Matlab》McGraw-Hill出版社,2000
[3]陈泽.详解MATLAB在科学计算中的应用.北京:电子工业出版社,2011.6 [4]艾冬梅.MATLAB与数学实验.北京:机械工业出版社,2010.5 [5]刘卫国.Matlab课程设计[M].北京:高等教育出版社,2006
[6]胡晓东,董辰辉.MATLAB从入门到精通.北京:人民邮电出版社,2010
14
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务