MATLAB绘图(很全面)
最全面的MATLAB作图

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为长度相同的向量,这是最常见、最基本的用法。
Matlab绘图

第二章绘图要画一个函数的图像,先是选取一堆x,求出相对应的y值,然后按照数值描点,接着用光滑的曲线把点连接起来。
和数学课讲的一样,在matlab中,我们画图也分为三步1. 建立一个x的点集;2. 根据函数关系式算出每个x对应y的点集;3. 将这些点用平滑的曲线连接起来。
例如要画y=sinx在[0,10]区间内的图像,首先我们要确定出x的区间>>x = [0:0.1:10];命令的意思是,产生一个数集,它从0开始,每次加0.1,一直加到10为止注意,命令后面的分号记得加上,否则matlab会把x的元素都打印出来,下面就是不加分号的后果:有了x的数集后,我们再根据函数关系式y=sinx得出y的点集>>y = sin(x);同样的,别忘了把分号加上抑制程序输出y的具体值,以及sin(x)的括号别忘了加到这里,我们已经把x和y确定下来,接下来只需用plot(x,y)命令即可绘制出图像>>plot(x,y)当然,如果你不定义y,而直接用一下嵌套命令也是可以的>>plot(x,sin(x))我们将x的增量变大一点,改为0到10,每次增幅为1,即>>x = [0:1:10];然后我们输入>>plot(x,y)我们会得到错误信息:原因是之前我们定义的y是由之前的x决定的,当x改变后,y依然没有改变,为了解决这个问题,我们要把y重新定义一遍,即命令要完整再输入一遍>>x = [0:1:10];>>y = sin(x);>>plot(x,y)然后程序会绘制出和我们预期相同的图像没错,我们将看到不光滑的曲线,这告诉我们,当使用plot(x,y)画图的时候x的增加幅度尽可能小一些,画出的图像才精确(跟数学里点越多图像越精确原理一样的)为了美化图像(有时是为了更清楚的辨析图像),我们经常要为图像加上网格,为坐标轴命名,改变曲线的颜色、形状这些命令2.1 加上网格我们使用grid on 命令我们这样书写:>>x=[0:0.1:10];y=sin(x);>>plot(x,y),grid on这样就画出了带网格的图像当然,也可以先画出没有网格的图像,再把窗口切回matlab命令输入窗口,输入grid on,这样图像就会加上网格,即>>x=[0:0.1:10];y=sin(x);>>plot(x,y)>>grid on2.2 为坐标轴命名为x坐标轴命名的命令是xlabel(),显然,y的就应该是ylabel()比如这里,我想让x命名为x,y命名为sinx,则如下输入:>>x=[0:0.1:10];y=sin(x);>>plot(x,y),xlabel(‘x’),ylabel(‘sinx’)注意,坐标轴的名字要用引号括起来,表示字符串当然也可以画图后再标坐标轴,即:>>x=[0:0.1:10];y=sin(x);>>plot(x,y)>>xlabel(‘x’)>>ylabel(‘sinx’)然后我们就可以看到坐标轴带命名的图像:2.3 绘制多条曲线绘制多条曲线有两种情况,一种是在同一个坐标面内画多条曲线,另一种是在一个面内画多个独立的曲线我们先讲第一种,假设我们要在一个坐标面内画sinx,cosx,tanx的图像先定义x,y>>x=[0:0.1:10]>>y1=sin(x);>>y2=cos(x);>>y3=tan(x);接着画图>>plot(x,y1)这时候函数绘制出了sinx的图像接着我们继续画>>plot(x,y2)我们会发现程序会把之前的sinx图像抹掉,然后绘制cosx的图像为了让他们同时存在,我们使用hold on命令,即画完一个图后,hold on,继续画当我们再加上tanx后会得到这个图像这是因为函数显示区间设置的原因,后面讲2.4 更改图像显示区间从楼上我们已经在一个图中画出了sinx、cosx、tanx的图像,但是我们知道tanx的值域是负无穷到正无穷,而sin,cos的值域是-1到1,这导致了我们基本上看不到sin,cos的图像,为了解决这个问题,我们只需用axis命令即可,命令格式为axis([xmin xmax ymin ymax])即括号内跟一个区间,四个数字分别是x的起点,x的终点,y的起点,y的终点。
MATLAB(matlab)二维绘图fplot语句的应用示例汇总(非常全面)

Matlab二维绘图fplot语句的帮助应用示例一、每种语句格式的使用说明二、每种语句格式的应用示例(1)fplot(f)应用举例fplot(@(x)cos(x));(2)fplot (f, xinterval) 应用举例:xinterval——[Xmin, Xmax] fplot(@(x)cos(x), [-pi,pi]);(3)fplot (funx, funy)应用举例——相当于画带参数的函数(4)fplot( funx, funy, tinterval)应用举例:tinterval——[tmin tmax](5)fplot(___, LineSpec)的应用举例fplot(@(x)exp(x),[-3 0],'--*y');hold on; %在一张图上画多个函数fplot(@(x)cos(x),[0 3],'-.^b');fplot(@(x)sin(x),[3,6],'-+g');grid on %加网格线(6)fplot (___,Name, Value)的应用举例绘制具有不同相位的三个正弦波。
对于第一个,使用 2 磅的线宽。
对于第二个,指定带有圆圈标记的红色虚线线型。
对于第三个,指定带有星号标记的青蓝色点划线线型。
其中第一条语句的’Linewidth’对应name;2对应value。
后附线条属性及各种标记的值,及常用的name, value的值(7)fplot(ax,___)的应用举例(8)fp = fplot(___)的应用举例通过使用圆点表示法设置属性,将线条更改为红色点线。
添加交叉标记,并将标记颜色设置为蓝色。
(9)[x,y] = fplot(___)的应用举例添加标题和轴标签添加标题和轴标签并格式化刻度使用gca 访问当前坐标轴对象。
沿x 轴以为间隔显示刻度线。
通过设置坐标轴对象的XTick 和XTickLabel 属性,格式化x 轴刻度值。
MATLAB绘图总结

一、二维数据曲线图1、MATLAB 最常用的画二维图形的命令是plot, plor 函数的基本调用格式为:plot(x.y)其 中x 和y 为长度相同的向豈,分别用于存储x 坐标和y 坐标数据。
例 1:在[0,2 7T ]画 Sill(.v) 0生成的图形如下图1所示:图1说明:(1) plot 函数的输入参数是矩阵形式时A 、 当x 是向量,y 是有一维与x 同维的矩阵时,则绘制出多根不同颜色的曲线。
曲线 条数等于y 矩阵的另一维数,x 被作为这些曲线共同的横坐标。
B 、 当x,y 是同维矩阵时.则以x,y 对应列元素为横、纵坐标分别绘制曲线,曲线条数 等于矩阵的列数。
C 、对只包含一个输入参数的plot 函数,当输入参数是实矩阵时,则按列绘制每列元素 值相对其卜.标的曲线,曲线条数等于输入参数矩阵的列数:当输入参数是复数矩阵时,则按 列分别以元素实部和虚部为横、纵坐标绘制多条曲线。
(2) 含多个输入参数的plot 函数 调用格式为:plot(xl,yl.x2,y2,"--.xn.yn)A, 当输入参数都为向量时,xl 和yl, x2和y2, xn 和yn 分别组成一组向量对,每一 组向量对的长度可以不同。
每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制岀 多条曲线。
B.当输入参数有矩阵形式时,配对的x_y 按对应列兀素为横、纵坐标分别绘制曲线,曲线 条数等于矩阵的列数。
例2:如卜所示的程序:x 1 =liuspace(0,2 *pi,l 00);x2=luispace(0.3 *pi,l 00);x3=linspace(0.4*pi,100);yl=sin(xl); y2=l+sin(x2);y3=2+sin(x3);x=[xl;x2;x3]';0.80.60.40.2-0.2-0.4-0.6-0.8y=[yl;y2;y3「plot(x,y,xl,yl-l) 其图形如图2所示:图2(3)plot函数最简单的调用格式是只包含一个输入参数:plot(x),在这种情况卜,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一•条连续曲线,这实际上是绘制折线图。
第二章 MATLAB绘图

说明:
(1)当x,y是同维矩阵时,则以x,y对应列元素为
横、纵坐标分别绘制曲线,曲线条数等于矩阵
的列数。 (2)当x是向量,y是有一维与x同维的矩阵时, 则绘制出多根不同色彩的曲线。曲线条数等于 y矩阵的另一维数,x被作为这些曲线共同的横
坐标。
(3)plot函数最简单的调用格式是只包含一个输 入参数:plot(x)。
对图形窗口灵活分割。请看下面的程序。
x=linspace(0,2*pi,60);
y=sin(x);z=cos(x);
t=sin(x)./(cos(x)+eps); ct=cos(x)./(sin(x)+eps); subplot(2,2,1); stairs(x,y); title('sin(x)-1');axis ([0,2*pi,-1,1]); %选择2×2个区中的1号区
2.2.1绘制三维曲线的最基本函数 plot3函数与plot函数用法十分相似,其调用格式为: plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n)
4. 对函数自适应采样的绘图函数
fplot函数的调用格式为: fplot(fname,lims,tol,选项) 例2.11 用fplot函数绘制f(x)=cos(tan(πx))的曲线。 先建立函数文件myf.m: function y=myf(x) y=cos(tan(pi*x));
再用fplot函数绘制myf.m函数的曲线:
例2.6 用图形保持功能在同一坐标内绘制曲线
y=2e-0.5xsin(2πx)及其包络线,并加网格线。
程序如下: x=(0:pi/100:2*pi)'; y1=2*exp(-0.5*x)*[1,-1];y2=2*exp(-0.5*x).*sin(2*pi*x); plot(x,y1,'b:'); axis([0,2*pi,-2,2]); %设置坐标 hold on; %设置图形保持状态 plot(x,y2,'k'); grid on; %加网格线 box off; %不加坐标边框 hold off; %关闭图形保持
MATLAB作图(超详细)

2020/5/31
数学建模
3. 对数坐标图
在很多工程问题中,通过对数据进行对数转换可以 更清晰地看出数据的某些特征,在对数坐标系中描绘数 据点的曲线,可以直接地表现对数转换.对数转换有双对 数坐标转换和单轴对数坐标转换两种.用loglog函数 可以实现双对数坐标转换,用semilogx和semilogy 函数可以实现单轴对数坐标转换. loglog(Y) 表示 x、y坐标都是对数坐标系
单击鼠标左键,则在当前图形窗口中,以鼠标点中的点为 中心的图形放大2倍;单击鼠标右键,则缩小2倍.
zoom off 关闭缩放模式
grid on
%标注格栅
MATLAB liti37
例 创建一个简单的半对数坐标图. 解 输入命令:
x=0:.1:10;
semilogy(x,10.^x)
MATLAB liti38
例 绘制y=x3的函数图、对数坐标图、半对数坐标图.
2020/5/31
MATLAB liti22 数学建模
返回
三维图形 1. 空间曲线 2. 空间曲面
semilogx(Y) 表示 x坐标轴是对数坐标系
semilogy(…) 表示y坐标轴是对数坐标系
plotyy 有两个y坐标轴,一个在左边,一个在右边
2020/5/31
数学建模
例 用方形标记创建一个简单的loglog.
解 输入命令:
x=logspace(-1,2);
loglog(x,exp(x),’-s’)
数学建模
返回
2. 定制坐标 Axis([xmin xmax ymin ymax zmin zmax])定制图形坐标
x、y、z的最大、最小值
Axis
将坐标轴返回到自动缺省值
第 3章 MATLAB绘图入门

例:利用函数hist绘制randn概率分布图。 解:>> Y = [1, 2, 2, 5, 6, 6, 8, 11]; hist(Y) >>hist(Y,20) >> Y = [1,2.5,2.1;3,3.5,6]; hist(Y),legend('第一列','第二列','第三列')
例:利用函数rose绘制极坐标下的玫瑰图,其中t为 随机数。 x=rand(1000,1)*100; t=x*pi/180; %设置x为正态分布随机数, 设置函数关系 rose(t) ;
例
在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)
设置曲线样式表
线型 : -. 实线 虚线 点划线 . o x 点标记 点 小圆圈 叉子符 y m c 颜色 黄 棕色 青色
t=[0:pi/20:4*pi]; %定义时间范围 hold on %允许在同一坐标系下绘制不同的图形 axis([0 4*pi -10 10]) plot(t, 10*sin(t), 'r:') %线形为点划线、颜色为红色、数据点标记为加号 plot(t, 5*cos(t),'b*--') %线形为虚线、颜色为蓝色、数据点标记为星号 xlabel('时间t'); ylabel('幅值x'); title('简单绘图实例'); legend('x1=10sint:点画线','x2=5cost:虚线') %添加文字标注 gtext('x1'); gtext('x2') %利用鼠标在图形标示曲线说明文字 grid on %在所画出的图形坐标中添加栅格
教你如何用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为长度相同的向量,这是最常见、最基本的用法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系中绘制多个图形。 4. plot(x, y, ‘s’): 开关格式,开关量字符串s设定了图形曲
(1) ezcontour(f)——绘制f=f(x,y)定义的等高线, x和y近 似范围 [ 2 , 2 ]
(2) ezcontour(f,domain)——同上, domain定义自变量x 和y的变化范围
9
3.1 符号数学的简易绘图函数
3.等高绘图函数
[例4-29] 根据
f 3(1 x) e2 x2 (1 y)2 10( x x3 y5 )e x2 y2 1 e (x 1)2 y2
线的颜色、线型及标记符号。
17
图形颜色、标记和线形参数表
符号 表示的颜色
符号
c 青色(cyan)
-
m 品红色(magenta) --
y 黄色(yellow)
:
r 红色(red)
-.
g 绿色(green)
none
b 蓝色(blue)
w 白色(white)
k 黑色(black)
代表的线型 实线(缺省值) 短划线 点连线(虚线) 点划线 不画线
绘制f的等高线
5
3
>> syms x y
>> f=3*(1-x)^2*exp(-(x^2)-(1+y)^2)-10*(x/5-x^3-y^5)*exp(-
x^2-y^2)
...-1/3*exp(-(x+1)^2-y^2);
>> ezcontour(f,[-3,3],49)
10
3.1 符号数学的简易绘图函数
4
3.1 符号数学的简易绘图函数
1.二维绘图函数
[例4-25]绘制函数表达式 x2 的y二4 维图形。
>>syms x y >>ezplot(x^2-y^4)
5
3.1 符号数学的简易绘图函数
1.二维绘图函数
[例4-26]绘制误差函数f (x)
>>syms x >>ezplot(erf(x)) >>grid
维动态轨迹图。
7
3.1 符号数学的简易绘图函数
2.三维绘图函数
[例4-28] 根据x=sint, y=cost, z=t,绘制三维曲线
>>syms t >>ezplot3(sin(t),cos(t),t, …[0,6*pi],’animate’)
8
3.1 号数学的简易绘图函数
3.等高线绘图函数
13
3.1 符号数学的简易绘图函数
4.网格图绘图函数 ezmesh
[例4-31]绘制f的网格图,其中 f
>> syms x y >> ezmesh(x*exp(-x^2-y^2),[-2.5,2.5],40)
xe x2 y2
14
3.1 符号数学的简易绘图函数
5.表面图绘图函数 ezsurf
[例4-34]x=cosscost、y=cosssint、z=sins绘制表面图
>> x=cos(t)*cos(t); >> y=cos(s)*sin(t); >> z=sin(s); >> ezsurf(x,y,z,[0,pi/2,0,3*pi/2]) >> view(17,40) >> shading interp
15
3.2 二维图形
plot函数绘制二维曲线,常用格式有:
线的颜色、线型及标记符号。
16
3.2 二维图形
plot函数绘制二维曲线,常用格式有:
1. plot(x):缺省自变量的绘图格式,x可为向量或矩阵。 2. plot(x, y):基本格式,x和y可为向量或矩阵。 3. plot(x1, y1, x2, y2,…):多条曲线绘图格式,在同一坐标
系中绘制多个图形。 4. plot(x, y, ‘s’): 开关格式,开关量字符串s设定了图形曲
本章目标
1.了解MATLAB的绘图功能 2.掌握二维图形和三维图形的绘制方法 3.能够进行常用的数据可视化处理 4.控制系统仿真绘图(补充)
1
主要内容
3.1 符号数学的简易绘图函数 3.2 二维图形 3.3 图形修饰与控制 3.4 三维图形 3.5 控制系统仿真绘图(补充)
2
3.1 符号数学的简易绘图函数
3.等高绘图函数
[例4-29] 根据
f 3(1 x) e2 x2 (1 y)2 10( x x3 y5 )e x2 y2 1 e (x 1)2 y2
绘制f的填充等高线
5
3
>> syms x y
>> f=3*(1-x)^2*exp(-(x^2)-(1+y)^2)-10*(x/5-x^3-y^5)*exp(-
特点: 使用极其简单 只需指定绘图函数名
缺点:功能比较简单, 常用于显示函数图形。
3
3.1 符号数学的简易绘图函数
1.二维绘图函数
(1) ezplot(f)——绘制表达式f(x)的二维图形, x近似范围 [ 2 ,2 ]
(2) ezplot(f,[xmin,xmax])——同上, x近似范围[xmin , xmax ]
x^2-y^2)-1/3*exp(-(x+1)^2-y^2);
>> ezcontourf(f,[-3,3],49)
11
3.1 符号数学的简易绘图函数
4.网格图绘图函数
ezmesh
5.表面图绘图函数 ezsurf
12
3.1 符号数学的简易绘图函数
5.表面图绘图函数 ezsurf 1)ezsurf(f):绘制f(x,y)图像,且-2*pi<x<2*pi,2*pi<y<2*pi 2)ezsurf(f,domain):绘制f(x,y)图像,且 x,y∈domain,其中domain最多可为1×4向量 [xmin,xmax,ymin,ymax,也可为1×2向量 [min,max] 3)ezsurf(x,y,z)绘制x=x(s,t),y=y(s,t),z=z(s,t)
% 添加网格
2
x
的e 二t2dt维图形。
0
6
3.1 符号数学的简易绘图函数
2.三维绘图函数
(1) ezplot3(x,y,z)——绘制x=x(t),y=y(t),z=z(t)定义的三 维图形, t近似范围 [ 2 , 2 ]
(2) ezplot3(x,y,z,[tmin,tmax])——同上, t近似范围 [tmin , tmax ] (3) ezplot3(x,y,z, [tmin,tmax],’animate’)——同上,绘制三