第5章 MATLAB基本绘图功能_第1页
第5章 MATLAB基本绘图功能_第2页
第5章 MATLAB基本绘图功能_第3页
第5章 MATLAB基本绘图功能_第4页
第5章 MATLAB基本绘图功能_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

1、(1),第五章 MATLAB的基本绘图功能,(2),Matlab绘图,Matlab设有大量函数和命令来绘制出各种各样的图形,具有强大的绘图功能,(3),3.1 二维数据曲线图 3.1.1 绘制单根二维曲线 plot函数 基本调用格式为:plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐标和y坐标,(4),例子3-1 给定数据:,对给定数据绘制图形,x=1 2 3 5 7 7.5 8 10; y=2 6.5 7 7 5.5 4 6 8; plot(x,y),一旦命令得以执行,图形窗口随绘图结果打开:,程序如下,(5),(6),plot 命令可以添加线条属性参数来确定 线条的类型 线

2、条的颜色 线条的标记(markers),线条属性的修改,Matlab程序设计,(7),图形颜色、标记和线型参数表,(8),plot命令的线型属性修改,x=1 2 3 5 7 7.5 8 10; y=2 6.5 7 7 5.5 4 6 8; plot(x,y),蓝色实线(默认),例3-2:修改线型,线型修改选项以字符串形式输入plot(x,y, r ) 颜色,线型,标记可以以任何顺序输入plot(x,y, r-d ) / plot(x,y, -r ) 所有选项都是可选的,即plot命令中可以同时含有一个、两个或三个玄选项。,(9),(10),(11),plot(x,y),plot(x,y, r-

3、 ),(12),plot函数最简单的调用格式是只包含一个输入参数plot(x) 在这种情况下,当x是实向量时,以该向量的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折现图。,(13),3.1.2 绘制多根二维曲线,对给定数据绘制图形,plot函数的输入参数是矩阵形式,若有两个输入参数:plot(x,y) (1) 当x是向量,y是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。曲线条数等于y矩阵的另一维数,x被作为这些曲线共同的横坐标。 (2) 当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。,(14),3.1.2 绘制多根二维曲线

4、,对给定数据绘制图形,若plot函数只有一个输入:plot(x) 当输入参数x为矩阵,且为实矩阵,则按列绘制每列元素值相对其下标的曲线,曲线条数等于输入参数矩阵的列数。 当输入参数x是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。 。,(15),x=3 5 9; 3 10 67; 3 23 90 plot(x),例3-4,若在命令窗口输入矩阵,(16),2.含多个输入参数的plot函数 调用格式为: plot(x1,y1,x2,y2,.xn,yn) (1)当输入参数都为向量时,x1和y1,x2和y2,,xn和yn分别组成一组向量对,每一组向量对的长度可以不同。每一向量对可以绘

5、制出一条曲线,这样可以在同一坐标内绘制出多条曲线。 (2) 当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。,(17),x1=linspace(0, 2*pi, 100); x2=linspace(0, 3*pi, 100); x3=linspace(0, 4*pi, 100); y1=sin(x1); y2=1+sin(x2); y3=2+sin(x3); x=x1;x2;x3; y=y1;y2;y3; plot(x,y,x1,y1-1, r-*),例3-5分析下列程序绘制的曲线。,(18),3.具有两个纵坐标标度的图形 在Matlab中,如

6、果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。 调用格式:plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。,(19),x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); plotyy(x,y1,x,y2),(20),4.图形保持 hold on/off 命令控制是保持原有图形还是刷新原有图形,不带参数的hold命令在两种状态之间

7、进行切换。 。,(21),程序如下: x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); plot(x,y1) hold on y2=2*exp(-0.5*x).*cos(pi*x); plot(x,y2) hold off,(22),3.1.3 修改多条曲线线条样式 根据曲线的线型、颜色和数据点标记符号规定,可以组合使用来对不同曲线修改样式。例如“b-.”表示蓝色点划线,“y:d”表示黄色虚线并用菱形符标记数据点。 格式为: Plot(x1,y1, b-. x2,y2,选项2,xn,yn,选项n) 当选项省略时,Matalb规定,线型一律用实线

8、。,(23),x=linspace(0,2*pi,1000); y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); K=find(abs(y1-y2)1e-2)% 查找y1与y2相等点(近似相等)的下标) x1=x(k); % 取y1和y2相等点的x坐标 y3=0.2*exp(-0.5*x1).*cos(4*pi*x1); %求y1与y2值相等点的y坐标 plot(x,y1,x,y2, k:,x1,y3, bp);%y1缺省蓝色实线,y2黑色点线,y3蓝色五角星。,例:在同一坐标系内,分别用不同线型和颜色绘制曲线 y1=0

9、.2e-0.5xcos(4x)和y2=0.2e-0.5xcos(x),标记两曲线交叉点,(24),(25),3.1.4 图形标注与坐标控制 1. 图形标注 有关图形标注函数的调用格式为: title(图形名称) xlabel(x轴说明) ylabel(y轴说明) text (x,y, 图形说明) gtext将标注加到图形任意位置 legend(图例1,图例2,),(26),(27),x=0:pi/100:2*pi; y1=2*exp(-0.5*x); y2=cos(4*pi*x); plot(x,y1,x,y2); title(x from 0 to 2pi );%加图形标题 xlabel(V

10、ariable x );%加x轴说明 ylabel(Variable y );%加y轴说明 gtext(0.8,1.5, 曲线y1=2*e-0.5*x ); %在指定位置添加图形说明 gtext(2.5,1.1, 曲线y2=cos(4pix); %在指定位置添加图形说明 legend(y1, y2) %加图例,(28),(29),3.1.4 图形标注与坐标控制 2. 坐标控制 Axis函数的调用格式为: Axis(xmin xmax ymin ymax zmin zmax Axis函数功能丰富,常用的格式还有: Axis equal: 纵、横坐标轴采用等长刻度。 Axis square: 产生

11、正方形坐标系(缺省为矩形) Axis auto: 使用缺省设置。 Axis off:取消坐标轴显示坐标轴,(30),网格线和边框线 给坐标加网格线用grid命令来控制。grid on/off 命令控制是画还是不画网格线。 (2) 给坐标加边框用box命令来控制。Box on/off命令控制是加还是不加边框线,不带参数的box命令在两种状态之间进行切换。,(31),t= 0:0.01:2*pi; x=exp(i*t); y=x; 2*x; 3*x ; plot(y) gird on; % 加网格线 box on; % 加坐标边框 axis equal % 坐标轴采用等刻度,(32),plot(y

12、),gird on; % 加网格线 box on; % 加坐标边框 axis equal % 坐标轴采用等刻度,(33),(34),(35),3.1.7 图形窗口的分割 subplot函数的调用格式 subplot(m,n,p) 该函数将当前图形窗口分成m*n个绘图区,即每行n个,共m行,区号按行优先编号,且选择第p个绘图区作为当前活动区。在每一个绘图区允许以不同的坐标系单独绘制图形。,(36),(37),x1=linspace(0, 2*pi, 100); x2=linspace(0, 3*pi, 100); x3=linspace(0, 4*pi, 100); y1=sin(x1); y2

13、=1+sin(x2); y3=2+sin(x3); x=x1;x2;x3; y=y1;y2;y3; subplot(2,2,1),plot(x1,y1, r-*) subplot(2,2,2),plot(x2,y2, g-*) subplot(2,2,3),plot(x3,y3, k-*) subplot(2,2,4),plot(x,y),例5-10 在图形窗口中,以子图形式同时绘制多根曲线,(38),(39),x=1:10; Y=10*(x.2); subplot(2,2,1),plot(x,y), title(直角坐标) subplot(2,2,2), loglog(x,y), title

14、(双对数) subplot(2,2,3), semilogx(x,y), title(以x轴为单边对数) subplot(2,2,4), semilogy(x,y) ), title(以y轴为单边对数),(40),(41),2. 极坐标图 Polar 函数用来绘制极坐标图,其调用格式为 polar(theta,roh,选项) 其中theta为极坐标极角,rho为极坐标矢径,选项的内容与plot相似。,【例】 绘制r=sin(t)cos(t)的极坐标图,并标记数据点。,t=0:pi/50:2*pi; r=sin(t).*cos(t); polar(t,r, -*);,(42),(43),3.2.

15、2 二维统计分析图 在Matlab中,二维统计分析图形很多,常见的有 条形图、阶梯图、杆图和填充图等 所采用的函数分别是: bar(x,y,选项) stairs(x,y,选项) stem(x,y,选项) fill(x1,y1,选项, x2,y2,选项,),(44),x=0:pi/10: 2*pi; y=2*sin(x); subplot(2,2,1),bar(x,y); title(bar(x,y) );axis(0 7 -2 2); subplot(2,2,2),stairs(x,y, b); title(stairs(x,y) );axis(0 7 -2 2); subplot(2,2,3

16、),stem(x,y ,b); title(stem(x,y) );axis(0 7 -2 2); subplot(2,2,4),fill(x,y, y); title(fill(x,y) );axis(0 7 -2 2);,例3-14 分别以条形图、阶梯图、杆图和填充图形式绘制曲线y=2sin(x).,(45),(46),(47),t=-pi:pi/500: pi; y=tan(sin(t)-sin(tan(t); comet(t,y);,例:绘制彗星曲线图,(48),x=1 2 3 4 5 6 7; y=0 0 0 1 0 0 0; pie(x,y),例:绘制饼图,(49),pie(x,y

17、,North, South, East, West, middle, fa, white),(50),a=rand(200,1); b=rand(200,1); c=rand(200,1); scatter(a,b,100,c, p),例:绘制离散图,(51),3.3 图形修饰处理 3.3.1 视点处理 Matlab提供了设置视点的函数view, 调用格式为:view(az,el) 其中az为方位角,el为仰角,它们均以度为单位。系统缺省的视点定义为方位角-37.5,仰角为30,(52),当x轴平行观察者身体,y轴垂直于观察者身体时,az=0;以此点为起点,绕着z轴顺时针运动,az为正,逆时针

18、为负。 EL为观察者眼睛与xy平面形成的角度。当观察者的眼睛在xy平面上时,el=0; 向上el为正,向下为负,(53),(a) AZ = -37.5, EL = 30 是默认的三维视角. (b) AZ = 0, EL = 90 是2维视角,从图形正上方向下看,显示的是xy平面. (c) AZ = EL = 0 看到的是xz平面. (d) AZ = 180,EL=0 是从背面看到的xz平面. (e) VIEW(2) 设置默认的二维视角, AZ = 0, EL = 90. (f) VIEW(3) 设置默认的三维视角, AZ = -37.5, EL = 30.,(54),t=0:0.1: 10*pi; x=exp(-t/20).*cos(t); y=exp(-t/20).*sin(t); z=t; plot3(x,y,z); xlabel(X); ylabel(Y); zlabel(Z); grid on;,例 从不同视点观察三维曲线,(55),t=0:0.1: 10*pi; x=exp(-t/20).*cos(t); y=exp(-t/20).*sin(t); z=t; plot3(x,y,z,*); xlabel(X); ylabel(Y); zlabel(Z); view(0,90) grid on;,从不同视角观察,(5

温馨提示

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

评论

0/150

提交评论