Matlab绘制曲线方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Y=[5 4 3 8 9 10;3 4 4 5 8 2 ;8 12 13 21 18 25 ;9 8 8 9 6 7]; plot(Y)
第4章 Matlab的图形功能ቤተ መጻሕፍቲ ባይዱ
在混合式的命令格式plot(X,Y)中,对X和Y而言,可分下 列几种情况: ◆如果 X 和 Y 都是向量,则长度必须相等; ◆如果 X 是向量,而 Y 是一个矩阵,X 的长度与矩阵 Y 的行数或列数相等,则它的作用是将向量 X 与矩阵 Y 的 每列或每行的向量相对应作折( 曲)线,当 Y 是方阵时, 则将向量 X 与矩阵 Y 的列向量对应作图; ◆如果 X 是矩阵,Y 是向量,Y 的长度等于矩阵 X 的行 数或列数,则将 X 的每列或每行的向量与 Y 相对应作图。 当 X 是方阵时,则将 X 的各列与 Y 对应作图; ◆如果 X 和 Y 都是矩阵,且维数相同,则按列与列的对 应方式来作图。
实现在同一个窗口中同时显示多个图像的命令subplot。 使用格式为: subplot(m,n,i) 其含义为 :把图形窗口分割为 m 行 n 列子窗口,然后选 定第 i 个窗口为当前窗口。
subplot 命令不仅用于二维图形,对三维图形一样适用。其本质是将 figure 窗口分为几个区域,再在每个区域内分别绘图。
X、Y、Z 是向量时,绘制以向量 X、Y、Z 的元素为 x、y、z 坐标的三 维曲线。 X、Y、Z 是矩阵时,以 X、Y、Z 对应列元素为 x、y、z 坐标分别绘制 曲线。
第4章 Matlab的图形功能
第4章 Matlab的图形功能
(1)掌握图形窗口的创建与控制,以及图形窗口的基本操 作; (2)熟练掌握二维和三维绘图基本的命令、着色、线型控 制; (3)初步掌握用特殊的图形来表现特殊数据的性质,如面 积图、直方图、饼图等。 (4)了解在极坐标、柱坐标和球坐标系下绘制图形。 (5)掌握坐标轴的控制和图形标注命令及其用法。 (6)了解句柄图形的概念和图形对象的结构层次、掌握图 形对象属性的获取及利用图形对象属性编辑器设置对象属性 的方法。 (7)掌握用 GUI 设计用户界面菜单对象和用户界面控制对 象的方法。
第4章 Matlab的图形功能
用 subplot 函数把两种不同的图形综合在一个图形窗口中。
subplot(2,2,1) t=0.1:0.1:2*pi; y=sin(t); semilogx(t,y) grid on subplot(2,2,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,2,3) x=1:0.01:5; y=exp(x); plotyy(x,y,x,y,’semilogx’,’plot’) subplot(2,2,4) x=1:0.1:10; y=sqrt(x); plot(x,y,’:rd’)
fplot 函数命令的调用格式为: [X,Y]=fplot(fun,lims,tol,n, ‘linespec’,p1,p2…)
fun:函数名字符串; lims:定义 x 的取值区间,lims=[xmin,xmax]; tol:相对误差(默认值为 2e-3); n:绘图的最少点数( n+1); ‘linespec’:线性设置; p1,p2,…:函数传递参数; X,Y :数组数据点坐标。
在同一图形窗口中用不同的绘图函数绘制同一函数曲线 y x 的双 y 轴 图形。
x=0:0.1:6; y=sqrt(x); plotyy(x,y,x,y,’semilogy’,’plot’)
plotyy 函数不能加入设置曲线线型、颜色及标出数据点的参数。
第4章 Matlab的图形功能
2.线型和颜色 plot 函数可以设置曲线的线段类型、定点标记和线段颜色。 常用的线段、颜色与定点标记参数
( 3)用 plot和fplot命令作图,比较二者的不同:
plot(x,y) figure(2) %打开一个新的图形窗口 plot(X,Y) %该命令等价于 fplot(’funfplot’,[-0.1,0.1],2e-4);
第4章 Matlab的图形功能
c.对数坐标曲线命令 绘制二维对数坐标曲线的命令semilogx、semilogy 和 loglog, 其用法和函数 plot 相同。 函数 semilogx 横坐标为对数坐标; 函数 semilogy 纵坐标为对数坐标; 函数loglog 横、纵坐标均为对数坐标。
第4章 Matlab的图形功能
用命令plot(X,Y) 绘制图形。
x=1:length(peaks); plot(x,peaks) 注意: >> peaks z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)
第4章 Matlab的图形功能
b.二维函数曲线专用命令 fplot
用plot绘图在确定自变量的取值间隔时,一般采用平均间隔,有时会因 某处 间距太大,而不能反映出函数的变化情况。fplot是绘制函数 y=f(x) 图形的专用命令,它的数据点是自适应产生的,对那些导数变化较大的 函数,用 fplot 函数绘出的曲线比等分取点所画出的曲线更加接近真实。
自动坐标系与用 axis 函数调整后的坐标系的比较。
subplot(2,1,1) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,1,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) axis([0,max(t),min(y),max(y)])
在同一图形窗口中用命令 plot(x,y)绘出正弦余弦函数的图形。
x=0:0.01:2*pi; y=[sin(x);cos(x)]; plot(x,y)
用命令plot(Y)绘制矩阵 Y=[5 4 3 8 9 10;3 4 4 5 8 2 ;8 12 13 21 18 25 ; 9 8 8 9 6 7]的图形。
第4章 Matlab的图形功能
二、二维平面图形与坐标系 1. 几个基本的绘图命令 a. 线性坐标曲线 plot (连续曲线) b. stem(离散曲线) 函数命令 plot 是 MATLAB 二维曲线绘图中最简单、最重 要、使用最广泛的一个线性绘图函数。它可以生成线段、 曲线和参数方程曲线的函数图形。 命令格式: plot(y) :单参数式(y为纵坐标向量,横坐标为向量[1 2 3 4 …]) plot(x,y):参数式 (x 为横坐标向量,y为纵坐标向量) plot(Y):m×n 矩阵式(矩阵的每列为纵坐标,横坐标为向量
绘制正弦函数的对数坐标曲线。
t=0.1:0.1:3*pi; y=sin(t); figure(1) semilogx(t,y) grid on figure(2) semilogy(t,y) figure(3) loglog(t,y)
%为图形窗口添加网格
第4章 Matlab的图形功能
d.双 y 轴图形 绘制左右均有 y 轴的图形 plotyy(x1,y1,x2,y2)
第4章 Matlab的图形功能
4. 坐标系的调整 实现坐标系的调整的命令是 axis 函数。 调用格式为: axis([xmin,xmax,ymin,ymax,zmin,zmax])
坐标的最小值( xmin,ymin,zmin)必须小于相应的最大值 ( xmax,ymax,zmax),否则会出错。
[1:m])
plot(X,Y):混合式
第4章 Matlab的图形功能
用命令 plot(y)绘曲线,其中 y=[5 3 4 9 0 2 3]。
y=[5 3 4 9 0 2 3]; plot(y)
用命令 plot(x,y)绘制函数 y=cos(x)在两个周期内的图形。
x=0:0.01:2*pi; y=cos(x); plot(x,y)
第4章 Matlab的图形功能
调用格式:plot(x,y,s) ,s 为类型说明参数,是字符串。
s 字符串可以是三种类型的符号之一,也可以是线型与颜色和定点标记 与颜色的组合; 如果没有 s 参数,plot 将使用缺省设置(实线,前七种颜色顺序着色) 绘制曲线; 在当前坐标系中绘图时,每调入一次绘图函数,MATLAB将擦掉坐标 系中已有的图形对象。可以用 hold on 命令在一个坐标系中增加新的图 形对象。注意MATLAB会根据新图形的大小,重新改变坐标系的比例。
用’fun1’和’fun2’指定不同的绘图函数分别绘制。 用 plotyy 函数绘制双 y 轴图形。
t1=0:0.1:3*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plotyy(t1,y1,t2,y2,'semilogx') grid on
第4章 Matlab的图形功能
用不同的线型和标注来绘制两条曲线。
t1=0:0.1:2*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plot(t1,y1,':hb',t2,y2,'--g')
第4章 Matlab的图形功能
3. 图形窗口的分割
有时需要在一个图形窗口中显示几幅图,以便对几个函数进行直观、 便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形 覆盖掉,而用 hold 命令不能实现同时显示几个不同坐标尺寸下的图 形,用 figure 命令再创窗口又很难同时比较由不同的数据绘得的图 像。
第4章 Matlab的图形功能
三、三维绘图 1. 三维曲线绘图命令 三维函数 plot3主要用来表现单参数的三维曲线,与二维绘 图函数 plot 相比,只多了第三维数据。 其调用格式为: plot3(X1,Y1,Z1,s1,X2,Y2,Z2,s2,…)或 plot3(X,Y,Z,s) 参数的含义如下: Xn、Yn、Zn:第一到三维数据,是尺寸相等的向量/矩阵; s、s1、s2:是字符串,用来设置线型、颜色、数据点标记。
第4章 Matlab的图形功能
一、图形窗口 创建图形窗口的命令为figure,有两种调用格式: figure/ figure(n) >>figure(1) >>x=0:0.1:1; 也可以由菜单创建: >>y=sin(x); File->New->Figure >>plot(x,y) 图形窗口的操作及控制
第4章 Matlab的图形功能
用plot(Z)绘制图形。
x=0:pi/20:2*pi; Z=sin(x)+cos(x)*i plot(Z) 等价于plot(real(Z),imag(Z))
用 plot(x1,y1,x2,y2,…) 在 同 一 窗 口中绘制多条曲线,且坐标和 长度都不同。
t1=0:0.1:3*pi; t2=0:0.1:6; plot(t1,sin(t1),t2,sqrt(t2))
第4章 Matlab的图形功能
fplot 和 plot 命令的比较。
( 1)创建函数 M 文件 funfplot。
function y=funfplot(x) y=sin(1./tan(pi.*x));
(2)将用 fplot 命令求得的坐标点按照对应大小创
建一个等间距坐标点赋值给矩阵 X,Y。
[X,Y]=fplot('funfplot',[-0.1,0.1],2e-4); %只把数据点坐标输入 X、Y,而不显示图形。 %要使用 tol、n 或是’linespec’的默认参数,可以给 函数传递一个[]作为参数。 x=-0.1:1/1000*pi:0.1; y=funfplot(x);
在窗口中同时绘制两条曲线:(x1,y1)和(x2,y2),曲线(x1,y1)用左侧的 y 轴,曲 线(x2,y2)用右侧的 y 轴。
plotyy(x1,y1,x2,y2, ‘fun’)
’fun’是字符串,用来指定绘图的函数名,如 plot、semilogx、semilogy 等 。
plotyy(z1,y1,x2,y2, ‘fun1’, ‘fun2’)
第4章 Matlab的图形功能ቤተ መጻሕፍቲ ባይዱ
在混合式的命令格式plot(X,Y)中,对X和Y而言,可分下 列几种情况: ◆如果 X 和 Y 都是向量,则长度必须相等; ◆如果 X 是向量,而 Y 是一个矩阵,X 的长度与矩阵 Y 的行数或列数相等,则它的作用是将向量 X 与矩阵 Y 的 每列或每行的向量相对应作折( 曲)线,当 Y 是方阵时, 则将向量 X 与矩阵 Y 的列向量对应作图; ◆如果 X 是矩阵,Y 是向量,Y 的长度等于矩阵 X 的行 数或列数,则将 X 的每列或每行的向量与 Y 相对应作图。 当 X 是方阵时,则将 X 的各列与 Y 对应作图; ◆如果 X 和 Y 都是矩阵,且维数相同,则按列与列的对 应方式来作图。
实现在同一个窗口中同时显示多个图像的命令subplot。 使用格式为: subplot(m,n,i) 其含义为 :把图形窗口分割为 m 行 n 列子窗口,然后选 定第 i 个窗口为当前窗口。
subplot 命令不仅用于二维图形,对三维图形一样适用。其本质是将 figure 窗口分为几个区域,再在每个区域内分别绘图。
X、Y、Z 是向量时,绘制以向量 X、Y、Z 的元素为 x、y、z 坐标的三 维曲线。 X、Y、Z 是矩阵时,以 X、Y、Z 对应列元素为 x、y、z 坐标分别绘制 曲线。
第4章 Matlab的图形功能
第4章 Matlab的图形功能
(1)掌握图形窗口的创建与控制,以及图形窗口的基本操 作; (2)熟练掌握二维和三维绘图基本的命令、着色、线型控 制; (3)初步掌握用特殊的图形来表现特殊数据的性质,如面 积图、直方图、饼图等。 (4)了解在极坐标、柱坐标和球坐标系下绘制图形。 (5)掌握坐标轴的控制和图形标注命令及其用法。 (6)了解句柄图形的概念和图形对象的结构层次、掌握图 形对象属性的获取及利用图形对象属性编辑器设置对象属性 的方法。 (7)掌握用 GUI 设计用户界面菜单对象和用户界面控制对 象的方法。
第4章 Matlab的图形功能
用 subplot 函数把两种不同的图形综合在一个图形窗口中。
subplot(2,2,1) t=0.1:0.1:2*pi; y=sin(t); semilogx(t,y) grid on subplot(2,2,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,2,3) x=1:0.01:5; y=exp(x); plotyy(x,y,x,y,’semilogx’,’plot’) subplot(2,2,4) x=1:0.1:10; y=sqrt(x); plot(x,y,’:rd’)
fplot 函数命令的调用格式为: [X,Y]=fplot(fun,lims,tol,n, ‘linespec’,p1,p2…)
fun:函数名字符串; lims:定义 x 的取值区间,lims=[xmin,xmax]; tol:相对误差(默认值为 2e-3); n:绘图的最少点数( n+1); ‘linespec’:线性设置; p1,p2,…:函数传递参数; X,Y :数组数据点坐标。
在同一图形窗口中用不同的绘图函数绘制同一函数曲线 y x 的双 y 轴 图形。
x=0:0.1:6; y=sqrt(x); plotyy(x,y,x,y,’semilogy’,’plot’)
plotyy 函数不能加入设置曲线线型、颜色及标出数据点的参数。
第4章 Matlab的图形功能
2.线型和颜色 plot 函数可以设置曲线的线段类型、定点标记和线段颜色。 常用的线段、颜色与定点标记参数
( 3)用 plot和fplot命令作图,比较二者的不同:
plot(x,y) figure(2) %打开一个新的图形窗口 plot(X,Y) %该命令等价于 fplot(’funfplot’,[-0.1,0.1],2e-4);
第4章 Matlab的图形功能
c.对数坐标曲线命令 绘制二维对数坐标曲线的命令semilogx、semilogy 和 loglog, 其用法和函数 plot 相同。 函数 semilogx 横坐标为对数坐标; 函数 semilogy 纵坐标为对数坐标; 函数loglog 横、纵坐标均为对数坐标。
第4章 Matlab的图形功能
用命令plot(X,Y) 绘制图形。
x=1:length(peaks); plot(x,peaks) 注意: >> peaks z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)
第4章 Matlab的图形功能
b.二维函数曲线专用命令 fplot
用plot绘图在确定自变量的取值间隔时,一般采用平均间隔,有时会因 某处 间距太大,而不能反映出函数的变化情况。fplot是绘制函数 y=f(x) 图形的专用命令,它的数据点是自适应产生的,对那些导数变化较大的 函数,用 fplot 函数绘出的曲线比等分取点所画出的曲线更加接近真实。
自动坐标系与用 axis 函数调整后的坐标系的比较。
subplot(2,1,1) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,1,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) axis([0,max(t),min(y),max(y)])
在同一图形窗口中用命令 plot(x,y)绘出正弦余弦函数的图形。
x=0:0.01:2*pi; y=[sin(x);cos(x)]; plot(x,y)
用命令plot(Y)绘制矩阵 Y=[5 4 3 8 9 10;3 4 4 5 8 2 ;8 12 13 21 18 25 ; 9 8 8 9 6 7]的图形。
第4章 Matlab的图形功能
二、二维平面图形与坐标系 1. 几个基本的绘图命令 a. 线性坐标曲线 plot (连续曲线) b. stem(离散曲线) 函数命令 plot 是 MATLAB 二维曲线绘图中最简单、最重 要、使用最广泛的一个线性绘图函数。它可以生成线段、 曲线和参数方程曲线的函数图形。 命令格式: plot(y) :单参数式(y为纵坐标向量,横坐标为向量[1 2 3 4 …]) plot(x,y):参数式 (x 为横坐标向量,y为纵坐标向量) plot(Y):m×n 矩阵式(矩阵的每列为纵坐标,横坐标为向量
绘制正弦函数的对数坐标曲线。
t=0.1:0.1:3*pi; y=sin(t); figure(1) semilogx(t,y) grid on figure(2) semilogy(t,y) figure(3) loglog(t,y)
%为图形窗口添加网格
第4章 Matlab的图形功能
d.双 y 轴图形 绘制左右均有 y 轴的图形 plotyy(x1,y1,x2,y2)
第4章 Matlab的图形功能
4. 坐标系的调整 实现坐标系的调整的命令是 axis 函数。 调用格式为: axis([xmin,xmax,ymin,ymax,zmin,zmax])
坐标的最小值( xmin,ymin,zmin)必须小于相应的最大值 ( xmax,ymax,zmax),否则会出错。
[1:m])
plot(X,Y):混合式
第4章 Matlab的图形功能
用命令 plot(y)绘曲线,其中 y=[5 3 4 9 0 2 3]。
y=[5 3 4 9 0 2 3]; plot(y)
用命令 plot(x,y)绘制函数 y=cos(x)在两个周期内的图形。
x=0:0.01:2*pi; y=cos(x); plot(x,y)
第4章 Matlab的图形功能
调用格式:plot(x,y,s) ,s 为类型说明参数,是字符串。
s 字符串可以是三种类型的符号之一,也可以是线型与颜色和定点标记 与颜色的组合; 如果没有 s 参数,plot 将使用缺省设置(实线,前七种颜色顺序着色) 绘制曲线; 在当前坐标系中绘图时,每调入一次绘图函数,MATLAB将擦掉坐标 系中已有的图形对象。可以用 hold on 命令在一个坐标系中增加新的图 形对象。注意MATLAB会根据新图形的大小,重新改变坐标系的比例。
用’fun1’和’fun2’指定不同的绘图函数分别绘制。 用 plotyy 函数绘制双 y 轴图形。
t1=0:0.1:3*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plotyy(t1,y1,t2,y2,'semilogx') grid on
第4章 Matlab的图形功能
用不同的线型和标注来绘制两条曲线。
t1=0:0.1:2*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plot(t1,y1,':hb',t2,y2,'--g')
第4章 Matlab的图形功能
3. 图形窗口的分割
有时需要在一个图形窗口中显示几幅图,以便对几个函数进行直观、 便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形 覆盖掉,而用 hold 命令不能实现同时显示几个不同坐标尺寸下的图 形,用 figure 命令再创窗口又很难同时比较由不同的数据绘得的图 像。
第4章 Matlab的图形功能
三、三维绘图 1. 三维曲线绘图命令 三维函数 plot3主要用来表现单参数的三维曲线,与二维绘 图函数 plot 相比,只多了第三维数据。 其调用格式为: plot3(X1,Y1,Z1,s1,X2,Y2,Z2,s2,…)或 plot3(X,Y,Z,s) 参数的含义如下: Xn、Yn、Zn:第一到三维数据,是尺寸相等的向量/矩阵; s、s1、s2:是字符串,用来设置线型、颜色、数据点标记。
第4章 Matlab的图形功能
一、图形窗口 创建图形窗口的命令为figure,有两种调用格式: figure/ figure(n) >>figure(1) >>x=0:0.1:1; 也可以由菜单创建: >>y=sin(x); File->New->Figure >>plot(x,y) 图形窗口的操作及控制
第4章 Matlab的图形功能
用plot(Z)绘制图形。
x=0:pi/20:2*pi; Z=sin(x)+cos(x)*i plot(Z) 等价于plot(real(Z),imag(Z))
用 plot(x1,y1,x2,y2,…) 在 同 一 窗 口中绘制多条曲线,且坐标和 长度都不同。
t1=0:0.1:3*pi; t2=0:0.1:6; plot(t1,sin(t1),t2,sqrt(t2))
第4章 Matlab的图形功能
fplot 和 plot 命令的比较。
( 1)创建函数 M 文件 funfplot。
function y=funfplot(x) y=sin(1./tan(pi.*x));
(2)将用 fplot 命令求得的坐标点按照对应大小创
建一个等间距坐标点赋值给矩阵 X,Y。
[X,Y]=fplot('funfplot',[-0.1,0.1],2e-4); %只把数据点坐标输入 X、Y,而不显示图形。 %要使用 tol、n 或是’linespec’的默认参数,可以给 函数传递一个[]作为参数。 x=-0.1:1/1000*pi:0.1; y=funfplot(x);
在窗口中同时绘制两条曲线:(x1,y1)和(x2,y2),曲线(x1,y1)用左侧的 y 轴,曲 线(x2,y2)用右侧的 y 轴。
plotyy(x1,y1,x2,y2, ‘fun’)
’fun’是字符串,用来指定绘图的函数名,如 plot、semilogx、semilogy 等 。
plotyy(z1,y1,x2,y2, ‘fun1’, ‘fun2’)