MATLAB二维绘图(直角坐标)
- 格式:docx
- 大小:95.82 KB
- 文档页数:15
MATLAB二维图形注释命令(zz)命令1 grid功能给二维或三维图形的坐标面增加分隔线。
该命令会对当前坐标轴的Xgrid,Ygrid,Zgrid的属性有影响。
用法grid on 给当前的坐标轴增加分隔线。
grid off 从当前的坐标轴中去掉分隔线。
grid 转换分隔线的显示与否的状态。
grid(axes_h andle,on|off) 对指定的坐标轴axes_hand le是否显示分隔线。
命令2 gtext功能在当前二维图形中用鼠标放置文字。
当光标进入图形窗口时,会变成一个大十字,表明系统正等待用户的动作。
用法 gtext('string') 当光标位于一个图形窗口内时,等待用户单击鼠标或键盘。
若按下鼠标或键盘,则在光标的位置放置给定的文字“string”h = gtext('string') 当用户在鼠标指定的位置放置文字“string”后,返回一个te xt图形对象句柄给h。
命令3 legend功能在图形上添加图例。
该命令对有多种图形对象类型(线条图,条形图,饼形图等)的窗口中显示一个图例。
对于每一线条,图例会在用户给定的文字标签旁显示线条的线型,标记符号和颜色等。
当所画的是区域(patch或surfa ce对象)时,图例会在文字旁显示表面颜色。
Matlab在一个坐标轴中仅仅显示一个图例。
图例的位置有几个因素决定,像遮挡的对象等,用户可以用鼠标拖动图例到恰当的位置,双击标签可以进入标签编辑状态。
用法 legend('string1','string2',…)用指定的文字strin g在当前坐标轴中对所给数据的每一部分显示一个图例。
legend(h,'string1','string2',…)用指定的文字strin g在一个包含于句柄向量h中的图形显示图例。
matlab直角坐标和经纬度的换算摘要:I.引言- 介绍MATLAB 软件- 说明直角坐标和经纬度换算的重要性II.MATLAB 中直角坐标和经纬度的转换方法- 利用MATLAB 内置函数进行转换- 利用MATLAB 进行手动计算转换III.实际应用案例- 使用MATLAB 进行经纬度换算的实际案例- MATLAB 在地理信息系统中的应用IV.结论- 总结MATLAB 在直角坐标和经纬度换算中的作用- 展望MATLAB 在地理科学领域的未来发展正文:MATLAB 是一种功能强大的数学软件,被广泛应用于科学计算、数据分析、图像处理等领域。
在地理科学领域,MATLAB 也具有重要的应用价值,可以用于进行直角坐标和经纬度的换算。
在MATLAB 中,经纬度和直角坐标之间的转换可以通过使用MATLAB 内置的函数来实现。
具体来说,可以使用MATLAB 中的`geocode`函数将经纬度转换为直角坐标,使用`reverse`函数将直角坐标转换为经纬度。
这些函数的使用方法简单,易于操作,可以帮助用户快速完成坐标转换。
除了使用MATLAB 内置函数进行转换外,用户也可以手动计算经纬度和直角坐标之间的转换。
这种方法需要用户掌握一定的数学知识,例如地理坐标系和直角坐标系之间的转换公式。
通过手动计算,用户可以更深刻地理解坐标转换的原理,更好地掌握MATLAB 的使用方法。
在实际应用中,MATLAB 的经纬度和直角坐标换算功能被广泛应用于地理信息系统(GIS) 中。
GIS 是一种以采集、存储、管理、分析和应用地理信息为主要任务的技术系统,可以用于制作地图、分析地理数据、规划城市等方面。
MATLAB 可以与GIS 软件相结合,帮助用户更好地完成地理数据的处理和分析。
综上所述,MATLAB 在直角坐标和经纬度的换算中发挥着重要作用。
通过使用MATLAB,用户可以方便地进行地理数据的处理和分析,更好地理解和应用地理科学知识。
MATLAB 常用函数3 绘图函数及命令By D. J. Liu1绘图函数(1) plot (二维线图)plot (x, y, ‘r*-’, ‘linewidth’, 5, ‘markersize’, 5)linewidth 设置线条的宽度markersize 设置点的大小(2) plot3 (三维线图)plot3 (X, Y, Z, ‘r*-, ‘linewidth’, 5, ‘markersize’, 5)linewidth 设置线条的宽度markersize 设置点的大小(3) scatter (二维散点图)scatter (X, Y, ‘S’)S设置点的形式、大小及颜色等属性(4) scatter3 (三维散点图)scatter3 (X, Y, Z, ‘S’)S设置点的形式、大小及颜色等属性(5) subplot (子图绘制)subplot(m,n,p)m行, n列, p当前位置(将一个窗口分成m×n个小窗口)(6) mesh (三维网格图)mesh (X, Y, Z)注意:X和Y必须为向量,如果X和Y的长度分别为m和n,则Z必须为m×n的矩阵,即[m,n]=size(Z),在这种情况下网格线的顶点为(X(j),Y(i),Z(i,j))。
(7) surf (三维曲面图)surf (X, Y, Z)surf的调用方法与mesh命令类似,不同的是mesh函数绘制的图像是一个网格图,而surf命令绘制得到的是着色的三维曲面。
着色的方法是在得到相应的网格后,对每个网格依据该网格所代表的节点的色值来定义这一网格的颜色。
注意:第一,surf只支持笛卡尔坐标系(直角坐标系)。
第二,如果要让曲面圆滑,去掉网格,只需要在绘图命令后加入shading interp,这样matlab就会进行相应插值。
注意:X和Y必须为向量,如果X和Y的长度分别为m和n,则Z必须为m×n的矩阵,即[m,n]=size(Z),在这种情况下网格线的顶点为(X(j),Y(i),Z(i,j))(8) pie3(X)(三维饼图)pie3(X) 用X中的数据画一个三维饼形图(百分比例),X中的每一个元素代表三维饼形图中的一部分。
Matlab中的极坐标绘图与极坐标变换引言:Matlab是一种常用的科学计算软件,它在数据处理和可视化方面具有强大的功能。
其中,极坐标绘图和极坐标变换是Matlab中一个重要的特性,可以用来呈现和分析各种数据。
本文将探讨Matlab中的极坐标绘图和极坐标变换的原理和应用。
一、极坐标绘图的基本原理极坐标系是一种二维坐标系,它的坐标由极径和极角构成。
在Matlab中,利用polar函数可以实现极坐标绘图。
这个函数需要两个向量作为参数,一个表示极角的向量theta,另一个表示极径的向量rho。
例如,我们可以通过以下代码在Matlab中画出一个极坐标图形:```matlabtheta = linspace(0, 2*pi, 100);rho = sin(3*theta);polar(theta, rho)```在这个例子中,我们使用linspace函数生成介于0到2π之间的100个等间距的角度值,然后计算对应的极径值。
最后,调用polar函数将这些值绘制成极坐标图形。
二、极坐标绘图的应用极坐标绘图在很多领域都有广泛应用。
例如,在信号处理中,我们可以用极坐标绘图来表示频谱图。
通过将极坐标图形转换为直角坐标系图形,我们可以直观地观察到信号的频谱特征。
此外,极坐标绘图还可以用于绘制复杂的几何图形。
通过合理选择极径和极角的变化规律,我们可以绘制出美观而富有创意的图形,例如花朵、螺旋线等。
这些图形不仅具有艺术价值,还能用于教学和科研领域。
三、极坐标变换的基本原理极坐标变换是一种将直角坐标系转换为极坐标系的方法。
Matlab中提供了cart2pol和pol2cart两个函数,可以实现这种转换。
cart2pol函数将直角坐标系下的坐标转换为极坐标系下的坐标。
它需要输入两个参数,分别是直角坐标系的x坐标和y坐标,输出为极坐标系的极角和极径。
以下是一个使用cart2pol函数的例子:```matlab[x, y] = meshgrid(-2:0.2:2);[theta, rho] = cart2pol(x, y);```在这个例子中,我们使用了meshgrid函数生成一个二维网格,其中x和y分别表示x坐标和y坐标的取值范围。
Matlab 直角坐标系在数学和工程领域中,直角坐标系是一种常见的坐标系,用于描述平面或空间中的位置和方向。
在 Matlab 中,直角坐标系起着重要的作用,可以用来表示和操作数据、绘制图形以及解决各种问题。
理解直角坐标系直角坐标系由两个互相垂直的轴组成,通常称为 x 轴和 y 轴。
这两个轴以交点为原点,形成一个二维平面。
在三维空间中,直角坐标系由三个互相垂直的轴组成,分别是 x 轴、y 轴和 z 轴。
这三个轴以交点为原点,形成一个三维空间。
通过在轴上定位一个点的坐标,可以唯一地表示该点在直角坐标系中的位置。
在 Matlab 中,使用[x, y]表示一个二维坐标点,其中 x 和 y 分别表示该点在x 轴和 y 轴上的坐标。
同样地,在三维空间中,使用[x, y, z]表示一个三维坐标点,x、y 和 z 分别表示该点在 x 轴、y 轴和 z 轴上的坐标。
在 Matlab 中使用直角坐标系表示和操作点在 Matlab 中,可以使用向量或矩阵来表示和操作直角坐标系中的点。
例如,要表示一个二维坐标点 (2, 3),可以使用以下方式:point = [2, 3];类似地,要表示一个三维坐标点 (1, 2, 3),可以使用以下方式:point = [1, 2, 3];可以通过索引来访问和修改点的坐标。
例如,要获取二维坐标点的 x 坐标和 y坐标,可以使用以下方式:x = point(1);y = point(2);绘制直角坐标系图形Matlab 中的plot函数可以用来绘制直角坐标系图形。
通过指定点的坐标,可以在直角坐标系中绘制出相应的图形。
例如,要绘制一个二维平面上的点 (2, 3),可以使用以下方式:x = 2;y = 3;plot(x, y, 'ro');axis equal;这段代码将绘制一个红色的点在坐标 (2, 3) 处,并设置坐标轴相等,以保持直角坐标系的比例。
同样地,要绘制一个三维空间中的点 (1, 2, 3),可以使用以下方式:x = 1;y = 2;z = 3;plot3(x, y, z, 'ro');axis equal;这段代码将绘制一个红色的点在坐标 (1, 2, 3) 处,并同样设置坐标轴相等。
文章标题:从matlab直角坐标到经纬度:详细解析与应用在现代科学技术领域中,地理空间信息处理是一个非常重要的方面。
而在处理地理空间信息时,经常需要进行直角坐标和经纬度之间的相互转换。
本文将以matlab编程语言为工具,深入探讨直角坐标和经纬度的换算,帮助读者全面理解这一重要的地理空间信息处理技术。
一、基本概念及原理我们需要了解直角坐标和经纬度的基本概念。
直角坐标是一种描述平面上点位置的坐标系统,通过x、y坐标轴来定位点的位置。
而经纬度则是地球表面上任意一点的位置,其中经度表示在东西方向上的位置,纬度表示在南北方向上的位置。
在进行直角坐标和经纬度之间的转换时,涉及到一些数学和地理知识。
具体原理包括数学中的三角学知识,以及地理上的大地测量知识。
当我们了解了这些基本概念和原理之后,就能更好地进行直角坐标和经纬度的换算。
二、matlab中的直角坐标和经纬度换算函数在matlab编程语言中,有许多内置函数可以用来进行直角坐标和经纬度的转换。
通过使用`cart2sph`函数,我们可以将直角坐标转换为球面坐标,其中包括经度和纬度。
而`geodetic2ned`函数则可以将经纬度坐标转换为局部的东北天 (NED) 坐标系。
这些函数的使用方法和参数设置都会对转换结果产生影响,因此我们需要了解这些函数的具体使用方法和注意事项。
matlab还提供了一些额外的工具箱,比如Mapping Toolbox和Navigation Toolbox,这些工具箱中包含了更多用于地理空间数据处理的函数和工具,可以帮助我们更好地进行直角坐标和经纬度的换算。
三、实际案例分析与应用在实际的地理空间信息处理工作中,直角坐标和经纬度的换算经常被广泛应用。
比如在航空航天领域,飞行器的导航和定位工作就需要利用直角坐标和经纬度之间的转换。
在地理信息系统(GIS) 和遥感领域,地图的制作和地物的识别也需要进行直角坐标和经纬度的转换。
这些实际案例可以帮助我们更好地理解直角坐标和经纬度的换算在现实生活中的重要性和应用价值。
MATLAB简易画图2—普通直⾓坐标系MATLAB简易画图2—普通直⾓坐标系本⼈的MATLAB版本为:继续在“MATLAB简易画图”这篇随笔的基础上进⾏延伸,做成普通直⾓坐标系。
1.源程序score.mcj_x1=[00.1];cj_y1=[10];cj_x2=[00.10.330.43];cj_y2=[0110];cj_x3=[0.330.430.660.76];cj_y3=[0110];plot(cj_x1,cj_y1,'b-',cj_x2,cj_y2,'r-',cj_x3,cj_y3,'m-');title('成绩⾪属函数');legend('不及格','良好','优秀')xlabel('归⼀化分数'),ylabel('⾪属度');axis([00.801.3]);原图:2.去掉右边与上⾯边框程序:cj_x1=[00.1];cj_y1=[10];cj_x2=[00.10.330.43];cj_y2=[0110];cj_x3=[0.330.430.660.76];cj_y3=[0110];plot(cj_x1,cj_y1,'b-',cj_x2,cj_y2,'r-',cj_x3,cj_y3,'m-');box offtitle('成绩⾪属函数');legend('不及格','良好','优秀')xlabel('归⼀化分数'),ylabel('⾪属度');axis([00.801.3]);图形变为:3.在gui中添加箭头效果如下图所⽰:4.将横纵坐标原点重合⽤⿏标双击“原点”位置,出现如下界⾯:点击“X标签—>刻度”点击(0,0)坐标,“删除”->“确定”即可5.设置为之后,就变为普通直⾓坐标系了。
强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。
此外,Matlab还提供了直接对图形句柄进行操作的低层绘图操作。
这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。
本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。
一.二维绘图二维图形是将平面坐标上的数据点连接起来的平面图形。
可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。
二维图形的绘制是其他绘图操作的基础。
一.绘制二维曲线的基本函数在Matlab中,最基本而且应用最为广泛的绘图函数为plot,利用它可以在二维平面上绘制出不同的曲线。
1.plot函数的基本用法plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。
plot函数的应用格式plot(x,y) 其中x,y为长度相同的向量,存储x坐标和y坐标。
例51 在[0 , 2pi]区间,绘制曲线程序如下:在命令窗口中输入以下命令>> x=0:pi/100:2*pi;>> y=2*exp(-0.5*x).*sin(2*pi*x);>> plot(x,y)程序执行后,打开一个图形窗口,在其中绘制出如下曲线注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。
例52 绘制曲线这是以参数形式给出的曲线方程,只要给定参数向量,再分别求出x,y向量即可输出曲线:>> t=-pi:pi/100:pi;>> x=t.*cos(3*t);>> y=t.*sin(t).*sin(t);>> plot(x,y)程序执行后,打开一个图形窗口,在其中绘制出如下曲线以上提到plot函数的自变量x,y为长度相同的向量,这是最常见、最基本的用法。
常用的二维图形命令:plot:绘制二维图形loglog:用全对数坐标绘图semilogx:用半对数坐标(X)绘图semilogy:用半对数坐标(Y)绘图fill:绘制二维多边填充图形polar:绘极坐标图bar:画条形图stem:画离散序列数据图stairs:画阶梯图errorbar:画误差条形图hist:画直方图fplot:画函数图title:为图形加标题xlabel:在X轴下做文本标记ylabel:在Y轴下做文本标记zlabel:在Z轴下做文本标记text:文本注释grid:对二维三维图形加格栅绘制单根二维曲线plot函数,基本调用格式为:plot(x,y)其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。
例如:在0≤x≤2?区间内,绘制曲线y=2e-0.5xcos(4πx)程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)plot函数最简单的调用格式是只包含一个输入参数:plot(x)在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。
p=[22,60,88,95,56,23,9,10,14,81,56,23];plot(p)绘制多根二维曲线1.plot函数的输入参数是矩阵形式(1) 当x是向量,y是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。
曲线条数等于y矩阵的另一维数,x被作为这些曲线共同的横坐标。
(2) 当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。
(3) 对只包含一个输入参数的plot函数,当输入参数是实矩阵时,则按列绘制每列元素值相对其下标的曲线,曲线条数等于输入参数矩阵的列数。
当输入参数是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。
2.含多个输入参数的plot函数调用格式为:plot(x1,y1,x2,y2,…,xn,yn)(1) 当输入参数都为向量时,x1和y1,x2和y2,…,xn和yn分别组成一组向量对,每一组向量对的长度可以不同。
实验三 MATLAB 绘图一、实验目的1.掌握二维图形的绘制。
2.掌握图形的标注3.了解三维曲线和曲面图形的绘制。
二、实验的设备及条件计算机一台(带有以上的软件环境)。
设计提示1.Matlab 允许在一个图形中画多条曲线:plot(x1,y1,x2,y2,……)指令绘制y 1 = f 1(x 1), y 2 = f 2 (x 2 )等多条曲线。
Matlab 自动给这些曲线以不同颜色。
标注可用text 函数。
2.绘图时可以考虑极坐标和直角坐标的转换。
3.三维曲线绘图函数为plot3,注意参考帮助中的示例。
三、实验内容1.生成1×10 维的随机数向量a ,分别用红、黄、蓝、绿色绘出其连线图、杆图、阶梯图和条形图,并分别标出标题“连线图”、“杆图”、“阶梯图”、“条形图”。
2、绘制函数曲线,要求写出程序代码。
(1) 在区间[0:2π]均匀的取50个点,构成向量t(2) 在同一窗口绘制曲线y1=sin(2*; y2=3cos(t+;要求y1曲线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号。
(3) 分别在靠近相应的曲线处标注其函数表达式。
3.将图形窗口分成两个绘图区域,分别绘制出函数:⎩⎨⎧+-=+=1352221x x y x y 在[0,3]区间上的曲线,并利用axis 调整轴刻度纵坐标刻度,使1y 在[0,12]区间上,2y 在[-2,]区间上。
4.用mesh 或surf 函数,绘制下面方程所表示的三维空间曲面,x 和y 的取值范围设为[-3,3]。
101022y x z +-=思考题:1. 编写一个mcircle(r)函数,调用该函数时,根据给定的半径r ,以原点为圆心,画一个如图所示的红色空心圆。
(图例半径r=5);左图参考polar函数的用法,右图绘制圆形的参数方程为x=sin (t ),y=cos (t )。
其中,t 的区间为0~2*pi ,步长为。
2.(1)绘一个圆柱螺旋线(形似弹簧)图。
Matlab画直角坐标图直角坐标图(又称笛卡尔坐标图)是用来表示平面上点的坐标的一种图形表示方法。
Matlab是一个强大的数值计算和数据可视化工具,它提供了丰富的绘图函数和工具箱,使得绘制直角坐标图变得非常简便。
下面将介绍如何使用Matlab画出直角坐标图的步骤。
步骤一:准备数据在绘制直角坐标图之前,我们首先需要准备要绘制的数据。
假设我们要绘制以下函数的图像:y = sin(x)这里可以选择任意的x值范围,以及步长。
为了简化,我们选择绘制x从0到2π的函数曲线。
步骤二:创建坐标系在Matlab中,我们可以使用figure函数创建一个新的绘图窗口。
然后使用plot函数绘制函数曲线,同时可以使用xlabel和ylabel函数为坐标轴添加标签,使用title函数为图像添加标题。
figure; % 创建新的绘图窗口x = 0:0.01:2*pi; % 定义x的取值范围,步长为0.01y = sin(x); % 计算对应的y值plot(x, y); % 绘制函数曲线xlabel('x'); % 添加x轴标签ylabel('y'); % 添加y轴标签title('y = sin(x)'); % 添加标题步骤三:设置坐标轴范围通过axis函数可以设置坐标轴的范围。
对于直角坐标图,一般设置x轴和y轴的范围相同,以保证图像是按比例绘制的。
axis([02*pi -11]); % 设置x轴范围为0到2π,y轴范围为-1到1步骤四:添加图例如果在同一张图上绘制了多个函数曲线,可以使用legend函数添加图例,以区分不同的曲线。
legend('y = sin(x)'); % 添加图例,标注函数曲线的名称步骤五:美化图像Matlab提供了丰富的绘图样式设置,可以通过修改绘图参数来美化图像。
例如,可以使用grid函数添加背景网格线,使用linewidth设置曲线的线宽等。
Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。
此外,Matlab还提供了直接对图形句柄进行操作的低层绘图操作。
这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。
本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。
一.二维绘图二维图形是将平面坐标上的数据点连接起来的平面图形。
可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。
二维图形的绘制是其他绘图操作的基础。
一.绘制二维曲线的基本函数在Matlab中,最基本而且应用最为广泛的绘图函数为plot,利用它可以在二维平面上绘制出不同的曲线。
1.plot函数的基本用法plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。
plot函数的应用格式plot(x,y) 其中x,y为长度相同的向量,存储x坐标和y坐标。
例51 在[0 , 2pi]区间,绘制曲线程序如下:在命令窗口中输入以下命令>> x=0:pi/100:2*pi;>> y=2*exp(-0.5*x).*sin(2*pi*x);>> plot(x,y)程序执行后,打开一个图形窗口,在其中绘制出如下曲线注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。
例52 绘制曲线这是以参数形式给出的曲线方程,只要给定参数向量,再分别求出x,y向量即可输出曲线:>> t=-pi:pi/100:pi;>> x=t.*cos(3*t);>> y=t.*sin(t).*sin(t);>> plot(x,y)程序执行后,打开一个图形窗口,在其中绘制出如下曲线以上提到plot函数的自变量x,y为长度相同的向量,这是最常见、最基本的用法。
007. 二维绘图(直角坐标) 前言:
Matlab 具有强大的绘图功能,提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形。
此外,Matlab 还提供了直接对图形句柄进行操作的低层绘图操作。
这类操作将图形的每个图形元素(如坐标轴、曲线、文字说明等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。
——————————————————————
二维绘图可以采用不同的坐标系,如直角坐标、极坐标、对数坐标等。
一.绘制二维曲线的基本函数
1. 基本绘图函数——plot()
用于绘制二维平面上的直角坐标图,要提供一组x 坐标和对应的y 坐标,可以绘制分别以x 和y 为横、纵坐标的二维曲线。
plot(x,y)——x,y 为长度相同的向量,存储x 坐标和y 坐标 例1 在[0,2]π区间,绘制一般曲线/22sin2x y e x π-=
x=0:pi/100:2*pi;
y=2*exp(-0.5*x).*sin(2*pi*x);
plot(x,y)
运行结果:
注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。
例2 绘制参数方程曲线——星形线: x = 2 cos3 t ; y = 2 sin3 t
t = 0:0.01:2*pi;
x = 2.*(cos(t)).^3;
y = 2.*(sin(t)).^3;
plot(x,y);
运行结果:
例3 绘制参数方程曲线——摆线:
x = a(t – sin t) ; y = a(1 – cos t)
t = 0:0.01:2*pi;
x = a.*(t - sin(t));
y = a.*(1 - cos(t));
plot(x,y);
运行结果:
2.同一坐标图中画多条函数曲线
调用格式为:plot(x1, y1, x2, y2, …, xn, yn)
例4 同一坐标图中画出sin y x =,2sin y x =,3sin y x =三条曲线。
x =0:pi/50:2*pi;
plot(x,sin(x),x,2*sin(x),x,3*sin(x))
运行结果:
注:利用plot函数可以直接将矩阵的数据绘制图形(矩阵的每一列数据作为一条曲线),例
例5 绘制数据矩阵表示的图形
A=pascal(5)
plot(A)
运行结果:A = 1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
3.图形选项设置线型、颜色和数据点标记符号等
线型:- 实线: 虚线-. 点划线-- 双划线
颜色:b蓝色g绿色r红色c青色m品红
y黄色k黑色w白色
标记符号: . 点o 圆圈×叉号+ 加号* 星号s 方块 d 菱形p 五角星h 六角星
∨朝下三角符号∧朝上三角符号
< 朝左三角符号 > 朝右三角符号
例6 用不同的线型和颜色在同一坐标图内绘制曲线
/22sin2x y e x π-=及其上下包络线:/2/22,2x x y e y e --==-
【用黑色虚线画出两条包络线,用蓝色双划线画出曲线y ,用红色五角星离散标出数据点】
x=(0:pi/100:2*pi)';
y1=2*exp(-0.5*x)*[1,-1];
y2=2*exp(-0.5*x).*sin(2*pi*x);
x1=(0:12)/2;
y3=2*exp(-0.5*x1).*sin(2*pi*x1);
plot(x,y1,'k:',x,y2,'b--',x1,y3,'rp');
运行结果:
4.绘制出具有不同纵坐标标刻度的两个图形——plotyy()
两个函数绘制在同一个坐标中(横坐标的标度相同,纵坐标有两个——不同量纲不同数量级),有利于图形数据的对比分析。
plotyy(x1,y1,x2,y2)
例7 绘制两个纵坐标图形
x1=0:pi/100:2*pi;
x2=0:pi/100:3*pi;
y1=exp(-0.5*x1).*sin(2*pi*x1);
y2=1.5*exp(-0.1*x2).*sin(x2);
plotyy(x1,y1,x2,y2);
运行结果:
二.绘制图形的辅助操作
1.图形标注
在绘制图形时,可以对图形加上一些说明,如图形的名称、坐标轴说明以及图形某一部分的含义等,这些操作称为添加图形标注。
有关图形标注函数的调用格式为:
title(’图形名称’)
xlabel(’x轴说明’)
ylabel(’y轴说明’)
text(x, y, ’图形说明’) % 在坐标点(x, y)的位置添加“图形说明”
legend(’图例1’, ’图例2’, …)
注:(1)legend函数用于对绘制曲线所用线型、颜色或数据点标记作图例说明(放置在空白处),用户还可以通过鼠标移动图例,将其放到所希望的位置。
(2)除legend函数外,其他函数同样适用于三维图形,在三维中z坐标轴说明用zlabel函数。
(3)上述函数中的说明文字,除了使用标准的ASCII字符外,
还可以使用LaTex格式的控制字符,这样就可以在图形上添加希腊
字符,数学符号和公式等内容,受LaTex字符串控制部分要加大括
号{ }括起来。
2.坐标控制
在绘制图形时,Matlab可以自动根据要绘制曲线数据的范围选择合适的坐标刻度,使得曲线能够尽可能清晰的显示出来。
但是,如果用户对坐标不满意,可以利用axis函数对其重新设定:axis([xmin xmax ymin ymax])
注:绘制出三维图形,需要再加两个参数zmin,zmax
x=0:0.1:10;
y=[];
for x0=x
if x0>=8
y=[y,1]; %y=1 elseif x0>=6
y=[y,5-x0/2]; %y=5-x/2 elseif x0>=4
y=[y,2]; %y=2 elseif x0>=0
y=[y,sqrt(x0)]; %y=sqrt(x)end
end
plot(x,y)
axis([0 10 0 2.5])
title('分段函数曲线');
xlabel('Variable x');
ylabel('Variable y');
text(2,1.3,'y=x^{1/2}');
text(4.5,1.9,'y=2');
text(7.3,1.5,'y=5-x/2');
text(8.5,0.9,'y=1');
运行结果:
3.图形保持(常用于同一坐标图下同时绘制多条函数曲线)
Matlab默认每执行一次绘图命令,就刷新一次当前图形窗口,图形窗口原有图形将不复存在,如果希望在已经存在的图形上再继续添加新的图形,可以使用图形保持命令hold. hold on/off 命令是保持原有图形还是刷新原有图形,不带参数的hold命令在两者之间进行切换。
4.图形窗口分割(子图)——subplot()
Matlab提供了subplot函数用来将当前窗口分割成若干个绘图区,每个区域代表一个独立的子图(使用独立的坐标系),可以通过
subplot函数激活某一区为活动区,其绘图命令都是作用于该活动区域。
调用格式:subplot(m, n, p)
该函数把当前窗口分成m×n个绘图区(m行,n列),按行优先编号。
其中第p个区为当前活动区。
每一个绘图区允许以不同的坐标系单独绘制图形。
例9 绘制2×2子图
x=0:pi/30:2*pi;
y=sin(x);
z=cos(x);
t=sin(x)./(cos(x)+eps);
ct=cos(x)./(sin(x)+eps);
subplot(2,2,1);
plot(x,y)
title('sin(x)');
axis([0,2*pi,-1,1]);
subplot(2,2,2);
plot(x,z)
title('cos(x)');
axis([0 2*pi -1 1]);
subplot(2,2,3);
plot(x,t)
title('tg(x)');
axis([0 2*pi -40 40]);
subplot(2,2,4);
plot(x,ct)
title('ctg(x)');
axis([0 2*pi -40 40]);
运行结果:。