




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MATLAB图形功能在处理一些实际问题时,人们很难直接从大量的数据中感受其具体含义,使用图形表示数据某些特征,有助于研究问题、发现规律、揭示本质.MATLAB提供了一系列的绘图命令函数,具有很方便的绘制图形功能.本章主要介绍平面曲线、空间曲线和空间曲面的绘图命令使用方法.二维图形4.1三维图形4.2CONTENTS4.1二维图形
二维图形是在X-Y平面上绘制的图形,主要是由一些基本图形元素组成,如点、直线、圆、多边形等几何元素.MATLAB系统提供了绘制曲线函数plot.由于MATLAB作图是通过描点、连线来实现的,故在绘制曲线之前,需要先取图形上的一系列点的坐标,即横坐标与纵坐标,然后利用plot函数绘制曲线.plot(X,Y,LineSpec)X和
Y都是向量,则它们的长度必须相同.绘制以数据(Xi,Yi)为节点的折线图.其中LineSpec用于设置线型、标记符号和颜色,见表4.1.plot(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn)同时绘制多条折线,相当于绘制plot(X1,Y1,LineSpec1),……plot(Xn,Yn,LineSpecn)注意:表4-1中属性可以全部指定,也可以只指定其中某几个,并且排列顺序任意.表4-1图形的线型、标记符号和颜色
数学上,绘制[a,b]区间上的函数y=f(x)图形,有以下步骤:
①找点:在x轴上的找点x1,x2,x3,……
②计算函数值:计算这些点处的函数值y1=f(x1),y2=f(x2),y3=f(x3),……
③描点:在坐标系中画出这些离散点;
④连线:用直线或曲线连接这些点,得到函数的大致图形.在MATLAB中,绘制平面图形可以采用以下步骤:
①给出x轴上的离散点列:x=[a:step:b];
②计算函数值:y=f(x);
③绘图:plot(x,y)例4.1绘制0到2之间的正弦函数图象.>>x=0:pi/20:pi*2;>>y=sin(x);>>plot(x,y,'r-*')%设置线型是实线,标记点是型号,颜色是红色得到图形如图4-1.图4-1(2)图形的属性
MATLAB可以用subplot划分绘图区域,调用格式如下:subplot(m,n,p)将一个绘图窗口分割成m*n个子区域,并按行从左至右依次编号.p表示第p个绘图子区域.例4.2使用subplot绘图.
>>x=-pi:pi/10:pi;
>>subplot(2,2,1);plot(x,sin(x));
>>subplot(2,2,2);plot(x,cos(x));
>>subplot(2,2,3);plot(x,x.^2);
>>subplot(2,2,4);plot(x,exp(x));图4-2subplot绘图
在绘制图形的过程中,若对图形加一些说明,如图形名称、曲线标注、坐标轴显示等,一种方法是使用MATLAB图形命令进行处理,表4-2给出了常用图形说明命令;另外一种方法,可以在图形操作窗口下,选择菜单栏中Insert选项,再按提示进行操作即可.命令意义title添加图形标题xlabel添加x坐标轴标注ylabel添加y坐标轴标注xlim设置当前坐标区或图的x坐标轴范围ylim设置当前坐标区或图的y坐标轴范围axis指定当前坐标区的范围text添加数据点标注legend添加图例holdon保持当前窗口的图像gridon对图形加网格控制figure新建绘图窗口表4-2常用图形命令例4.3常用图形命令.
x=linspace(0,2*pi,100);
y1=sin(x);
y2=cos(x);
plot(x,y1,'r-',x,y2,'k:')
axis([02*pi-11])
title('正弦和余弦曲线')
xlabel('x')
ylabel('y')
text(pi,0,'\leftarrowsin(x)')
text(pi/2,0,'\leftarrowcos(x)')
legend('sin(x)','cos(x)')
得到的图形见图4-3.
图4-3正弦和余弦曲线
例4.4随机抽取了11个城市居民家庭关于收入与食品支出的样本,数据见表4-3,绘制出收入x与支出y的关系图.收入x(元)8293105130144150160180270300400支出y(元)758592105120130145156200200240表4-3收入x与支出y的关系解x=[8293105
130
144
150
160
180
270
300
400];
y=[758592
105
120
130
145
156
200
200
240];
plot(x,y,'bo')
title('城市居民家庭消费情况')
xlabel('收入x(元)')
ylabel('支出y(元)')
gridon关系图如图4-4所示.
图4-4城市居民家庭消费情况2.符号函数绘图
fplot(f,xinterval,LineSpec)
在指定区间xinterval=[xminxmax]绘制由函数
y=f(x)
定义的曲线,LineSpec设置线型、标记符号和线条颜色,见表4-1.
fplot的绘图数据点是自适应产生的.在函数平坦处,所取数据点比较稀疏;在函数变化剧烈处,它将自动取较密的数据点.
例4.5绘制参数化曲线x=cos(3t)和y=sin(2t).
解>>xt=@(t)cos(3*t);
>>yt=@(t)sin(2*t);
>>fplot(xt,yt)
得到图形如图4-5.图4-5绘制参数曲线例4.6绘制分段函数.解新建脚本文件f.m,输入以下MATLAB命令后保存并执行后得到图4-6.fplot(@(x)exp(x),[-30],'b')holdonfplot(@(x)cos(x),[03],'b')holdoffgridon图4-6分段函数例4.7利用plot、fplot函数绘制
的图像,并作比较.解MATLAB程序代码如下
subplot(2,1,1)
x=-1:.1:1;y=sin(1./x);
plot(x,y)
subplot(2,1,2)
fplot(@(x)sin(1./x),[-1,1])得到的图形见图4-7.图4-7利用plot、fplot函数绘图
从图4-7可以看出plot函数根据指定的数据点,但是
在x=0处没有意义,所以不能绘出x=0处的点.对于导数变化比较大的函数,用fplot比plot指令要更真实.4.1.2其他绘图函数polar(t,r,‘s’)在极坐标下绘制图形,t为极角theta,r为极径rho.s表示线条的线型、标记符号和颜色等,s可省略.fill(X,Y,ColorSpec)
填充
X和
Y
指定的二维多边形(颜色由
ColorSpec
指定)其他绘图函数见表4-4.函数名功能函数名功能area填充面积图pie圆饼图bar条形图plotmatrix散点图矩阵barh水平柱图ribbon以三维带形式画二维线comet慧星形轨线stem火柴杆图errorbar误差条形图stairs台阶图gplot以图论方式绘图clabel等高线图仰角标签quiver场图polar极坐标图表4-4其他绘图函数例4.8绘制心形线和四叶玫瑰线.解clf
t=0:pi/100:6*pi;
s1=2*sin(2*t);s2=2*(1-cos(t));
subplot(1,2,1)
polar(t,s1,'.')
title('心形线')
subplot(1,2,2)
polar(t,s2)
title('四叶玫瑰线')得到图形如图4-8.图4-8心形线和四叶玫瑰线例4.9使用
fill
函数创建一个红色八边形.解
t=(1/16:1/8:1)'*2*pi;
x=cos(t);y=sin(t);
fill(x,y,'r')
axissquare得到图形如图4-9.图4-9红色八边形4.2三维图形1.三维曲线
plot3(X,Y,Z,LineSpec)
函数绘出三矩阵的列向量的,其中X,Y,Z为3个大小相同的矩阵.函数给出通过这些向量所表示的点的图形.其中X,Y,Z为3个相同长度的向量.其中LineSpec为定义线型的字符串,形式同plot函数.
plot3(X1,Y1,Z1,LineSpec1,...,Xn,Yn,Zn,LineSpecn)
可为每个X、Y、Z三元组指定特定的线型、标记和颜色.可以对某些三元组指定LineSpec,而对其他三元组省略它.
绘制三维曲线的方法同平面曲线的类似,属性设置见表4-1和4-2.例4.10绘制螺旋线解
t=0:0.5:10*pi;
x=t;y=sin(t);z=cos(t);
plot3(x,y,z,'.-')
title('螺旋线')
xlabel('x');ylabel('y');zlabel('z')得到图形如图4-10.图4-10螺旋线例4.11绘制蓝宝石项链图.解
t=0:0.02*pi:2*pi;
x=sin(t);y=cos(t);z=cos(2*t);
plot3(x,y,z,'bd-')
boxon
view([-82,58])
legend('链','宝石')得到图形如图4-11.图4-11蓝宝石项链图2.三维曲面
MATLAB中利用meshgrid、mesh和surf函数可以方便绘制三维曲面图形.在MATLAB中绘制由函数z=z(x,y)确定的曲面时,首先利用meshgrid产生一个网格矩阵,然后计算函数在各网格点上的值,再利用mesh和surf函数绘制曲面图形.调用格式如下:
[X,Y]=meshgrid(x,y)
x,y为给定的向量,X,Y是网格划分后得到的网格矩阵;
若x=y,则可简写为[X,Y]=meshgrid(x).mesh(X,Y,Z,C)
绘制由X,Y,Z,C所确定的曲面网格面图形.surf(X,Y,Z,C)
绘制由矩阵X,Y,Z,C所确定的曲面图,参数含义同mesh.mesh绘制网格图,surf绘制着色的三维表面图.例4.12使用向量
x
定义的
x
坐标和向量
y
定义的
y
坐标创建二维网格坐标,并在二维网格上计算函数z=
x2+y2.解
>>x=1:2;
>>y=1:3;
>>[X,Y]=meshgrid(x,y)
X=
12
12
12Y=112233>>Z=X.^2+Y.^2Z=25581013
例4.12中例用直线x=1,x=2,y=1,y=2,y=3对[1,2]×[1,3]进行网格划分,得到网格点(1,1),(1,2),(1,3),(2,1),(2,2),(2,3),见图4-12.例4.12中的X和Y是同型矩阵,分别存储网格点的横坐标和纵坐标.利用X和Y的点幂运算计算网格点对应的函数值矩阵Z,即X中的(i,j)元素和Y中的(i,j)元素进行计算得到Z中的元素(i,j),如当X(3,1)=1,Y(3,1)=3时,Z(3,1)=10.
Z也和X、Y是同型矩阵.图4-12meshgrid绘制二维网格例4.13(1)利用mesh绘制巴拿马草帽(2)利用surf绘制椭球面解(1)x=[-8:0.5:8];y=[-8:0.5:8];
[X,Y]=meshgrid(x,y);
r=sqrt(X.^2+Y.^2)+eps;
Z=sin(r)./r;
mesh(X,Y,Z)
title(‘巴拿马草帽')
xlabel('x');ylabel('y');zlabel('z')得到图形见图4-13a.图4-13a(2)clear
r=linspace(0,pi,100);t=linspace(0,2*pi,100);
[r,t]=meshgrid(r,t);
X=3*sin(r).*cos(t);Y=2*sin(r).*sin(t);Z=cos(r);
surf(X,Y,Z)
axisequal
xlabel('x');ylabel('y');zlabel('z')
title('椭球面')
得到图形见图4-13b.图4-13bMATLAB命令如下:t=0:0.1:2*pi;r=-3:0.1:3;[t,r]=meshgrid(t,r);x=r.*cos(t);y=r.*sin(t);z=r;mesh(x,y,z)holdonu=-pi:0.1:pi;v=-3:0.1:3;[u,v]=meshgrid(u,v);x1=1+cos(u);y1=sin(u);z1=v;mesh(x1,y1,z1)得到图形如图4-14.图4-14锥面和柱面的相交图形解MATLAB命令如下:r=-1/2:0.1:1/2;t=0:0.03:2*pi;[r,t]=meshgrid(r,t);x=(1+r.*cos(t/2)).*cos(t);y=(1+r.*cos(t/2)).*sin(t);z=r.*sin(t/2);surf(x,y,z)得到图形如图4-15.
图4-15莫比乌斯带前面作出的曲面都是双侧曲面,它们可以分出内、外侧或左、右侧等,莫比乌斯带子是单侧曲面,它没有内外侧和左右侧之分.3.三维网图的高级处理
(1)消隐处理:hiddenon|off设置或取消图形消隐.该语句一定要放在绘图语句之后,否则不起作用;
(2)带有等位线投影的网图绘制:meshc;
(3)平台式网图的绘制:meshz;
(4)水线图的绘制:waterfall.例4.16三维网图的高级处理.解
>>loadlogo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 妇幼保健员职业知识整合试题及答案
- 妇幼保健员职业发展试题及答案
- 茶艺师必读的参考书籍试题及答案
- 2025年计算机专业技术资格考试必看题型试题及答案
- 2025计算机技术与软件资格初级考试高频试题及答案
- 2024年人力资源管理师考试常识与试题及答案
- 婴儿安全护理措施的落实方法试题及答案
- 二零二五年度城市医疗卫生一体化双向转诊合作协议
- 2025年度租赁住宅安全保障与居民安全教育培训协议
- 二零二五年度专科个体诊所医生长期聘用协议
- 7-8宝钢湛江钢铁三高炉系统项目全厂供配电工程-测量方案-2019.7.5
- 单个军人队列动作教案
- 《第3单元 角的度量:角的度量》课件
- Y -S-T 581.8-2023 氟化铝化学分析方法和物理性能测定方法 第 8 部分:硫酸根含量的测定 硫酸钡重量法 (正式版)
- 大象出版社《科学》四年级下册 第三单元 太阳、地球和月亮 影子的形成课件
- 2023北京市-实验动物上岗证培训考试题库
- 吉林省地方教材家乡小学一年级下册家乡教案
- 实验经济学实验设计案例
- 国际经济法自考真题及答案
- 护理时间管理课件
- 《术前讨论制度》课件
评论
0/150
提交评论