Matlab基础及其应用-第4章-图形绘制课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Matlab基础及其应用-第4章-图形绘制课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 基础 及其 应用 图形 绘制 课件
- 资源描述:
-
1、MATLAB基础与应用教程第第4 4章章图形绘制【本章学习目标】掌握绘制二维和三维图形的方法。掌握图形修饰处理方法。了解图像处理的基本原理和方法。掌握交互式绘图工具的使用方法。MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1plot函数用于绘制平面上的线性坐标曲线。plot(X,Y)其中,参数X和Y为向量或矩阵,分别用于存储要绘制的数据点的横坐标和纵坐标。4.1.1 绘制二维曲线MATLAB基础与应用教程4.1 二维维曲线线的绘绘制【例4.1】绘制曲线如果plot函数的输入参数的数据点太少,绘制的图形不能反映数据的变化特性。4.1.1 绘制二维曲线t=linspace(0,2*pi,2
2、00);x=sin(t)+sin(2*t);y=cos(t)-cos(2*t);plot(x,y);MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1plot函数plot函数的输入参数变化形式。(1)当x和y是同样大小矩阵时,配对的x、y按对应列的元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。例如,在同一坐标中绘制3条幅值不同的正弦曲线,命令为4.1.1 绘制二维曲线x=linspace(0,2*pi,100);y=sin(x);plot(x;x;x,y;y*2;y*3)如果X或Y一个是行向量,一个是矩阵,则矩阵的列数应与向量的元素个数相同,绘图时按矩阵的行对数据分组绘制,曲线条
3、数为矩阵的行数;如果X或Y一个是列向量,一个是矩阵,则矩阵的行数应与向量的元素个数相同,绘图时按矩阵的列对数据分组绘制,曲线条数为矩阵的列数。MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1plot函数plot函数的输入参数变化形式:(2)当plot函数只有一个输入参数时,即plot(y)若y是实型向量,则以该向量元素的下标为横坐标、元素值为纵坐标绘制出一条连续曲线;若y是复数向量,则分别以向量元素实部和虚部为横、纵坐标绘制一条曲线。4.1.1 绘制二维曲线t=linspace(0,2*pi,100);x=cos(t)+1i*sin(t);y=x;2*x;3*x;plot(y)MATL
4、AB基础与应用教程4.1 二维维曲线线的绘绘制1plot函数plot函数的输入参数变化形式:(3)当plot函数有多个输入参数,且都为向量时,即plot(x1,y1,x2,y2,xn,yn)其中,x1和y1、x2和y2、xn和yn分别组成一组向量对,以每一组向量对为横、纵坐标绘制出一条曲线。4.1.1 绘制二维曲线t1=linspace(0,3*pi,90);x=cos(t1)+t1.*sin(t1);t2=linspace(0,2*pi,50);y=sin(t2)-t2.*cos(t2);plot(t1,x,t2,y);MATLAB基础与应用教程4.1 二维维曲线线的绘绘制2fplot函数根
5、据参数函数的变化特性自适应地设置采样间隔。当函数值变化缓慢时,设置的采样间隔大;当函数值变化剧烈时,设置的采样间隔小。fplot函数的基本调用格式为:fplot(fun,lims)其中,fun代表定义曲线y坐标的函数,通常采用函数句柄的形式。lims为x轴的取值范围,用二元行向量xmin,xmax描述,默认为-5,5。4.1.1 绘制二维曲线MATLAB基础与应用教程4.1 二维维曲线线的绘绘制【例4.2】用fplot函数绘制曲线 ,x0 4。从2016a版本开始,MATLAB提供了fplot函数的双输入参数的用法:fplot(funx,funy,lims)其中,funx、funy代表函数,通
6、常采用函数句柄的形式。lims为参数函数funx和funy的自变量的取值范围,用二元向量tmin,tmax描述。例如,例4.1也可以用以下命令实现:4.1.1 绘制二维曲线 fplot(x)sin(x.2)./x,0,4*pi)xxxf)sin()(2 fplot(t)sin(t)+sin(2*t),(t)cos(t)-cos(2*t),0,2*pi)MATLAB基础与应用教程4.1 二维维曲线线的绘绘制4.1.1 绘制二维曲线 fimplicit(x,y)x.*x.*x+y.*y.*y-5*x.*y+1/5)MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1曲线基本属性为了加强对比效果
7、,我们常常会在plot函数中加上选项,用于指定所绘曲线的线型、颜色和数据点标记。4.1.2 设置曲线样式MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1曲线基本属性要设置曲线样式可以在plot函数、fplot函数中加绘图选项,其调用格式为:plot(x,y,选项)plot(x1,y1,选项1,x2,y2,选项2,xn,yn,选项n)fplot(funx,选项)fplot(funx,funy,选项)4.1.2 设置曲线样式MATLAB基础与应用教程4.1 二维维曲线线的绘绘制4.1.2 设置曲线样式x=linspace(-3,3,1000);y1=x.*x-3;y2=2*sin(x)+3
8、*cos(x);k=find(abs(y1-y2)t=linspace(0,2*pi,121);plot(t,sin(2*t),Color,0 0 0,.%设置曲线为黑色 LineWidth,2,.%设置曲线线宽为2 Marker,o,.%设置曲线标记为圆 MarkerIndices,1 31 61 91 121,.%在4个点显示标记 MarkerEdgeColor,r,.%设置曲线标记外框为红色 MarkerFaceColor,y,.%设置曲线标记内填充黄色 MarkerSize,8)%设置曲线标记大小为8MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1图形标注图形标注函数的调用格式
9、如下。title(坐标轴标题)xlabel(x轴说明)ylabel(y轴说明)text(x,y,图形说明)legend(图例1,图例2,)title函数用于给坐标轴添加标题;xlabel、ylabel分别用于给x轴、y轴添加说明;text函数用于在指定位置(x,y)添加图形说明;legend函数用于添加图例,说明绘制曲线所用线型、颜色或数据点标记。4.1.3 图形标注与坐标控制MATLAB基础与应用教程4.1 二维维曲线线的绘绘制1图形标注说明文字,除使用常规字符外,还可使用TeX标识符输出其他字符和标识,如希腊字母、数学符号、公式等。在MATLAB支持的TeX字符串中,用bf、it、rm标识
10、符分别定义字形为加粗、倾斜和常规字体。表4.5中的各个字符既可以单独使用,又可以和其他字符及命令联合使用。为了将控制字符串、TeX标识符与输出字符分隔开来,可以用大括号界定控制字符串以及受控制字符串的起始和结束。例如:4.1.3 图形标注与坐标控制 text(0.3,0.5,sin(omegat+beta)%标注sin(t+)MATLAB基础与应用教程4.1 二维维曲线线的绘绘制上标由 引导,下标由 _ 引导【例4.4】在0 x2区间内,绘制曲线y1=e0.5x和y2=e0.5x cos(4x),并添加图形标注。4.1.3 图形标注与坐标控制x=0:pi/100:2*pi;y1=exp(-0.
11、5*x);y2=exp(-0.5*x).*cos(4*pi*x);plot(x,y1,x,y2)title(x from 0 to 2pi);%添加坐标轴标题xlabel(Variable X);%添加X轴说明ylabel(Variable Y);%添加Y轴说明text(1.5,0.5,曲线y_1=e-0.5x);%在指定位置添加图形说明text(3,-0.2,曲线y_2=cos(4pix)e-0.5x);legend(y_1,y_2)%添加图例MATLAB基础与应用教程4.1 二维维曲线线的绘绘制2坐标控制调用axis函数来实现。axis(xmin,xmax,ymin,ymax,zmin,z
12、max)系统按照给出的三个坐标轴的最小值和最大值设置坐标轴范围,通常,绘制二维图形时只给出前4个参数。例如:axis(-pi,pi,-4,4)axis函数其他用法如下。axis auto:使用默认设置。axis equal:纵、横坐标轴采用等长刻度。axis square:产生正方形坐标轴(默认为矩形)。axis on:显示坐标轴。axis off:不显示坐标轴。4.1.3 图形标注与坐标控制MATLAB基础与应用教程4.1 二维维曲线线的绘绘制2坐标控制 给坐标轴加网格线用grid命令来控制。grid on命令控制显示网格线grid off命令控制不显示网格线不带参数的grid命令用于在两种
13、状态之间进行切换。给坐标轴加边框用box命令。box命令的使用方法与grid命令相同。如果程序中没有出现box命令,默认是有边框线的。4.1.3 图形标注与坐标控制MATLAB基础与应用教程4.1 二维维曲线线的绘绘制【例4.5】绘制曲线 及其包络线,x0。4.1.3 图形标注与坐标控制t=0:pi/100:pi;y1=sin(t).*1;-1;%包络线函数值y2=sin(t).*sin(9*t);plot(t,y1;y2)grid on;%加网格线box on;%加坐标边框axis equal%坐标轴采用等刻度sin sin(9)yttMATLAB基础与应用教程4.1 二维维曲线线的绘绘制1
14、图形窗口的分割subplot函数,用来实现对当前图形窗口的分割。subplot函数的调用格式为:subplot(m,n,p)其中,参数m和n表示将图形窗口分成m行n列个绘图区,区号按行优先编号。第3个参数指定第p个区为当前活动区,若p是向量,则表示将向量中的几个区合成1个绘图区。4.1.4 多图形显示MATLAB基础与应用教程4.1 二维维曲线线的绘绘制【例4.6】在图形窗口中,以子图形式同时绘制多根曲线。4.1.3 图形标注与坐标控制x=-3:0.1:3;subplot(2,2,2);%将图形窗口划分成224个子图,选定2区为当前活动区。y2=sin(2.*x.2);plot(x,y2);x
15、label(b);axis(-3 3-1.2 1.2)subplot(2,2,4);y3=cos(x.3);plot(x,y3);xlabel(c);axis(-3 3-1.2 1.2);grid on;subplot(2,2,1 3);%选定1和3号区为当前活动区fplot(x)(x-cos(x.3)-sin(2*x.2),-3 3);xlabel(a);MATLAB基础与应用教程4.1 二维维曲线线的绘绘制2图形叠加在已存在的图形上再叠加新的图形,可使用图形保持命令hold。hold on命令控制保持原有图形,hold off命令控制刷新图形窗口,不带参数的hold命令控制在两种状态之间进
16、行切换。例如:4.1.4 多图形显示t=linspace(0,2*pi,200);x=sin(t)+sin(2*t);y=cos(t)-cos(2*t);plot(x,y);%绘制三个叶片axis equalhold on%保持原有图形fplot(x)sin(x),(x)cos(x),-pi,pi)%绘制圆MATLAB基础与应用教程4.1 二维维曲线线的绘绘制3具有两个纵坐标标度的图形在同一个坐标轴绘制具有不同纵坐标标度的两个图形,可以使用yyaxis函数4.1.4 多图形显示yyaxis leftyyaxis rightyyaxis(ax,left)yyaxis(ax,right)MATLA
17、B基础与应用教程4.1 二维维曲线线的绘绘制【例4.7】用不同标度在同一坐标轴内绘制曲线y1=0.2e0.5xcos(2x)和y2=1.5e0.5xcos(x)。4.1.4 多图形显示x=0:pi/50:2*pi;y1=0.2*exp(-0.5*x).*cos(2*x);yyaxis rightplot(x,y1)text(2,0.2*exp(-0.5*2)*cos(2*2),曲线y_1);y2=1.5*exp(-0.5*x).*cos(pi*x);yyaxis leftplot(x,y2)text(2,1.5*exp(-0.5*2)*cos(pi*2),曲线y_2);MATLAB基础与应用教
18、程4.1 二维维曲线线的绘绘制1对数坐标图形semilogx(x1,y1,选项1,x2,y2,选项2,)semilogy(x1,y1,选项1,x2,y2,选项2,)loglog(x1,y1,选项1,x2,y2,选项2,)semilogx函数使用半对数坐标,x轴为常用对数刻度,y轴为线性刻度。semilogy函数也使用半对数坐标,x轴为线性刻度,y轴为常用对数刻度。loglog函数使用全对数坐标,x轴和y轴均采用常用对数刻度。4.1.5 其他坐标系下的曲线MATLAB基础与应用教程4.1 二维维曲线线的绘绘制【例4.84.8】绘制y=ex的对数坐标图并与直角线性坐标图进行比较。4.1.5 其他坐
19、标系下的曲线x=0:0.1:10;y=exp(-x);subplot(2,2,1);plot(x,y);title(plot(x,y);grid on;subplot(2,2,2);semilogx(x,y);title(semilogx(x,y);grid on;subplot(2,2,3);semilogy(x,y);title(semilogy(x,y);grid on;subplot(2,2,4);loglog(x,y);title(loglog(x,y);grid on;MATLAB基础与应用教程4.1 二维维曲线线的绘绘制2极坐标图MATLAB中用polarplot函数来绘制极坐标
20、图,其调用格式为:polarplot(theta,rho,选项)其中,theta为极坐标极角,rho为极坐标极径4.1.5 其他坐标系下的曲线MATLAB基础与应用教程4.1 二维维曲线线的绘绘制4.1.5 其他坐标系下的曲线t=0:pi/100:2*pi;r=1-sin(t);subplot(1,2,1)polarplot(t,r)subplot(1,2,2)r1=1-sin(t-pi/2);%旋转角度为负数,图形逆时针方向旋转polarplot(t,r1)MATLAB基础与应用教程4.1 二维维曲线线的绘绘制3等高线图contour(X,Y,Z,n,v)contourf(X,Y,Z,n,v
21、)其中,X和Y分别表示平面上的横坐标和纵坐标,Z表示高程。当X和Y是矩阵时,大小应和Z相同;参数n指定用n条水平线来绘制等高线;v是单调递增向量,其中的每一个元素对应一条水平线的值,等高线的个数为v中元素的个数。contour函数用于绘制常规等高线图contourf函数用于绘制填充方式的等高线图。4.1.5 其他坐标系下的曲线MATLAB基础与应用教程4.1 二维维曲线线的绘绘制3等高线图调用colorbar函数在指定位置显示颜色条。colorbar(位置)位置可取值包括:north(坐标轴的上部)、south(坐标轴的下部)、east(坐标轴的右部)、west(坐标轴的左部)、northou
22、tside(坐标轴上)、southoutside(坐标轴下)、eastoutside(坐标轴右)、westoutside(坐标轴左)、manual。例如:contour(peaks(40),20)colorbar4.1.5 其他坐标系下的曲线MATLAB基础与应用教程4.2 其他二维图维图形的绘绘制1条形图函数用于显示不同时间点的数据大小或比较各组数据的大小。bar函数的基本调用格式为:bar(x,width,style)参数x存储绘图数据。选项width设置条形的相对宽度和控制在一组内条形的间距,默认宽度为0.8;选项style用于指定分组排列模式,类型有grouped(簇状分组)、stac
23、ked(堆积)、histc(横向直方图)、hist(纵向直方图),默认采用簇状分组排列模式。4.2.1 条形类图形MATLAB基础与应用教程4.2 其他二维图维图形的绘绘制【例4.10】表4.7所示为某公司3类产品各季度的销售额(单位:万元),分别按季度绘制簇状柱形图和堆积条形图。4.2.1 条形类图形x=51,82,34,47;67,78,68,90;78,85,65,50;subplot(2,1,1);bar(x);title(Group);subplot(2,1,2);barh(x,stacked);title(Stack);MATLAB基础与应用教程4.2 其他二维图维图形的绘绘制2直
24、方图函数MATLAB提供了绘制直方图的histogram函数和绘制帕累托图的pareto函数。histogram函数的基本调用格式为:histogram(x,nbins)参数x存储绘图数据。选项nbins用于设置统计区间的划分方式。若nbins是一个正整数,则统计区间均分成nbins个小区间;若nbins是向量,则向量中的每一个元素指定各区间的最小值,默认按x中的值自动确定划分的区间数。4.2.1 条形类图形MATLAB基础与应用教程4.2 其他二维图维图形的绘绘制3玫瑰花图又称为角度直方图。MATLAB提供rose函数绘制玫瑰花图,rose函数的用法如下:rose(theta,nbins)参
25、数theta是一个向量,用于确定每一区间与原点的角度。绘图时将圆划分为若干个角度相同的扇形区域,每一扇形区域三角形的高度反映了落入该区间的theta元素的个数。若nbins是标量,则在 0,2 区间内均匀划分为nbins个扇形区域;若nbins为向量,指定分组中心值,nbins元素的个数为数据分组数,默认为20。4.2.1 条形类图形MATLAB基础与应用教程4.2 其他二维图维图形的绘绘制1扇形统计图pie函数的基本调用格式为:pie(x,explode)参数x存储绘图数据。explode是与x同等大小的向量或矩阵,与explode的非零值对应的部分将从饼图中心分离出来。explode缺省时
展开阅读全文