h第3章 MATLAB绘图h
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
当y为实矩阵时, plot(y)绘制矩阵y的列元素相对其下标的曲
线,其中曲线条数等于矩阵y的列数; [例]使用plot函数的最简单形式绘制实矩阵的二维图形
y=[1 2 3;4 6 8;10 12 20] plot(y)
5
3.1 基本二维绘图 2)plot函数
当y为复数矩阵时, plot(y)是绘制元素实部为横坐标,元素虚
x=-1:0.1:5; y=[3*cos(x);cos(x);cos(x+0.1*pi)]; plot(x,y)
10
3.1 基本二维绘图 拓展:例 在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)
拓展1:如果去掉“hold on””hold off”语句会怎 样?2:如果用不同纵坐标方 拓展 式来绘制,程序语句如何 写?
0.5xcos(4πx)
18
3.1 基本二维绘图 (6) plot函数可以设置曲线样式 MATLAB提供了一些绘图选项,用于确定所绘曲线 的线型、颜色和数据点标记符号,它们可以组合 使用。例如,“b-.”表示蓝色点划线,“y:d”表示黄 色虚线并用菱形符标记数据点。当选项省略时, MATLAB规定,线型一律用实线,颜色将根据曲 线的先后顺序依次。 要设置曲线样式可以在plot函数中加绘图选项,其 调用格式为: plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)
程序如下: t=0:pi/50:2*pi; r=sin(t).*cos(t); polar(t,r,'-*');
'-*' 表示实线星号
polar函数不能对多 组变量同时进行绘图
23
3.2 其他二维图形 1).极坐标polar函数绘图 拓展:对比以下两段程序,分别绘制极坐标图 程序1如下: t=0:0.1:2*pi; r=sin(3*t); polar(t,r, 'r-o'); 程序2如下: t=0:0.1:2*pi; r=cos(2*t); polar(t,r,'g-d');
12
3.1 基本二维绘图 2)plot函数 (3) plot函数可以同时对多组变量进行绘图。
[例]使用plot函数对多组变量同时进行绘图
x=0:0.5:10; y1=cos(x) y2=sin(x) y3=tan(x) plot(x,y1,x,y2,x,y3)
扩展1:三条线的x横 坐标一样,是否可以把 后面的两个x省略?
25
3.2 其他二维图形 2).对数坐标图形
MATLAB提供了绘制对数和半对数坐标曲线的函数,调用格 式为:
semilogx(x1,y1,选项1,x2,y2,选项2,…) semilogy(x1,y1,选项1,x2,y2,选项2,…) 以上两个函数分别以x轴和y轴为对数坐标 loglog(x1,y1,选项1,x2,y2,选项2,…) 是双对数坐标,即x轴和y轴都是对数坐标
32其他二维图形函数名功能介绍函数名功能介绍area填充绘图fplot函数绘制bar柱状图hist直方图barh水平柱状图paretopareto图comet彗星图pie饼图errorbar误差带图plotmatrix分散矩阵绘制ezplot简单绘制函数图ribbon三维图的二维条状显示ezpolar简单绘制极坐标图scatter散射图feather矢量图stem离散序列火柴杆状图fill多边形填充stairs阶梯图gplot拓扑图rose极坐标系下的直方图compass与feather函数类似的矢量图quiver向量场291柱状图barbarhbarxy
x=[-1.1 2 3 5.6;-2 1.3 5.7 8;-8 5 2.3 6] y=randn(3,4) plot(x,y)
9
3.1 基本二维绘图 2)plot函数
当x为向量,y是有一维和x同维的矩阵时, plot函数以x为曲线横 坐标,对x和y的每一行或列画线,其中曲线条数等于矩阵y的 另一维数; [例]使用plot函数的常用形式绘制向量和矩阵的二维图形
X1,y1 扩展:绘制结果是 几条线?如何分辨 是哪个函数对应的 曲线?
X3,y3
X2,y2
X1,y1-1
14
3.1 基本二维绘图 (4) plot函数可以绘制具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标 度的两个图形,可以使用plotyy绘图函数。调用 格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横 坐标的标度相同,纵坐标有两个,左纵坐标用于 x1,y1数据对,右纵坐标用于x2,y2数据对。
使用plot函数的常用形式 绘制两同维向量的二维图 形
11
3.1 基本二维绘图 2)plot函数
(3) plot函数可以同时对多组变量进行绘图,用法: plot(x1,y1,x2,y2,…,xn,yn):对多组变量同时进行绘图,不同 组之间互不影响。 当输入参数都为向量时,x1和y1,x2和y2,…,xn和yn分 别组成一组向量对,每一组向量对的长度可以不同。每一 向量对可以绘制出一条曲线,这样可以在同一坐标内绘制 出多条曲线。 当输入参数有矩阵形式时,配对的x,y按对应列元素为横、 纵坐标分别绘制曲线,曲线条数等于矩阵的列数。
16
3.1 基本二维绘图
(5)图形保持 hold on/off命令控制是保持原有图形还是刷新原有 图形,不带参数的hold命令在两种状态之间进行 切换。
17
3.1 基本二维绘图
[例] 采用图形保持,在同一坐标内绘制曲线y1=0.2e-
和y2=2e-0.5xcos(πx)。其中, x=0:pi/100:2*pi; 程序如下: x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); plot(x,y1) hold on y2=2*exp(-0.5*x).*cos(pi*x); plot(x,y2); hold off
注意:代表颜色的字母大小写都可以?!! 第三个和第四个图的画图选项有何区别?结果有影响
21
3.1 基本二维绘图 [例] 在同一坐标内,分别用不同线型和颜色绘制曲线y1=0.2e0.5xcos(4πx)
和y2=2e-0.5xcos(πx),标记两曲线交叉点。
程序如下:
x=linspace(0,2*pi,1000); y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); k=find(abs(y1-y2)<1e-2); %查找y1与y2相等点(近似相等)的下标 %取y1与y2相等点的x坐标 x1=x(k); y3=0.2*exp(-0.5*x1).*cos(4*pi*x1); %求y1与y2值相等点的y坐标 plot(x,y1,x,y2,'k:',x1,y3,'bp');
7
3.1 基本二维绘图 2)plot函数
当x和y为同维向量时, 为同维向量时 plot函数功能和line函数相同; [例]使用plot函数的常用形式绘制两同维向量的二维图形
x=0:0.75:3.5 y=3*x plot(x,y)
8
3.1 基本二维绘图 2)plot函数
当x和y为同维矩阵时, plot函数以矩阵x和y的列元素作为横、 纵坐标绘制曲线,其中曲线的条数等于矩阵的列数; [例]使用plot函数的常用形式绘制双矩阵的二维图形
‘k‘ 黑色 ‘bp‘ 蓝色正五边形
22
3.2 其他二维图形 1).极坐标polar函数绘图
polar函数用来绘制极坐标图,其调用格式为:
polar(theta,rho,选项) 其中theta为极坐标极角,rho为极坐标矢径,选项的 内容与plot函数相似。
[例] 绘制r=sin(t)cos(t)的极坐标图,并标记数据点。
20
二维图形常用设置选项
3.1 基本二维绘图 [例]使用plot函数分别绘制不同线型和颜色的二维图形。 程序如下:
x=0:0.1:5; y=cos(x); subplot(2,2,1) plot(x,y,'-') title('点画线') subplot(2,2,2) plot(x,y,'d') title('菱形') subplot(2,2,3) plot(x,y,'g-.') title('绿色点画线') subplot(2,2,4) plot(x,y,'-.g') title('绿色点画线')
15
3.1 基本二维绘图
[例] 用不同标度在同一坐标内绘制曲线
y1=0.2e-0.5xcos(4πx) 和y2=2e-0.5xcos(πx)。其中, x=0:pi/100:2*pi;
程序如下:
x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); plotyy(x,y1,x,y2);
具体用法: Line(x,y): x、y都是一维数组,line函数将数组(x(i),y(i))中的各 点用线段连接起来,形成一条折线。 [例]使用line函数实现已知点连线的功能
x=10:-1.03:1.35 y=cos(x) line(x,y)
2
3.1 基本二维绘图 2)plot函数
有多种调用格式,不同调用格式可以实现不同的功能。
扩展2:前面有个例子(PPT 第10页)也是画了三条曲 线,那个是怎么表达的?
13
3.1 基本二维绘图 拓展:例 分析下列程序绘制的曲线。 x1=linspace(0,2*pi,100); x2=linspace(0,3*pi,100); x3=linspace(0,4*pi,100); y1=sin(x1); y2=1+sin(x2); y3=2+sin(x3); x=[x1;x2;x3]'; y=[y1;y2;y3]'; plot(x,y,x1,y1-1)
19
3.1 基本二维绘图 (6) plot函数可以设置曲线样式
选项 : -. -Y M C R G B W k 含义说明 实线 点线 点画线 虚线 黄色 紫红色 蓝绿色 红色 绿色 蓝色 白色 黑色 选项 . O + * X S D V ^ < > P 含义说明 点 圆 加号 星号 X符号 方形 菱形 下三角 上三角 左三角 右三角 正五边形
(1)plot函数的简单调用格式为:plot(y) 当y为实向量时, 以该向量元素的下标为横坐标,元 素值为纵坐标画出一条连续曲线,实际上是绘制折 线图; 当y为实矩阵时, plot(y)绘制矩阵y的列元素相对其下 标的曲线,其中曲线条数等于矩阵y的列数; 当y为复数矩阵时, plot(y)是绘制元素实部为横坐标, 元素虚部为纵坐标的曲线。
部为纵坐标的曲线。 [例]使用plot函数的最简单形式绘制复数矩阵的二维图形
x=[1 2 3;4 6 8] y=[-1.2 0 2.1;3 5.2 8] z=x+y*i plot(z)
6
3.1 基本二维绘图 2)plot函数 (2)plot函数的常用调用格式为:plot(x,y) 当x和y为同维向量时, 为同维向量时 plot函数功能和line函数相同; 当x和y为同维矩阵时, plot函数以矩阵x和y的列元素作 为横、纵坐标绘制曲线,其中曲线的条数等于矩阵的 列数; 当x为向量,y是有一维和x同维的矩阵时, plot函数以x 为曲线横坐标,对x和y的每一行或列画线,其中曲线 条数等于矩阵y的另一维数; 当x为矩阵,y是向量时情况同上;需注意, plot(x,y)函 数是以y为曲线的纵坐标。
24
• 蓝翔的技校生的标准是记住“修车的过程”就可以 了,大学的理科生必须还要思考、学习“车为什么 这么修”,更要去研究“怎么修更好”。这种思考的 能力和欲望就是素质教育培养的内容,这也是技 工和科学家的本质区别,更是大学和技校的本质 区别。说的再简单一点就是四个字——君子不器 。 • 素质教育的目的是什么? • 一,培养健全的人格 • 二,培养学习的能力 • /blog-882964742390.lot函数
当y为实向量时, 以该向量元素的下标为横坐标,元素值为纵坐
标画出一条连续曲线,实际上是绘制折线图; [例]使用plot函数的最简单形式绘制实向量的二维图形
x=[-2.1 2.8 0 -1.9 2.9] plot(x)
4
3.1 基本二维绘图 2)plot函数
第3章 MATLAB绘图
3.1 3.2 3.3 3.4 3.5 基本二维绘图 其他二维图形 图形处理技术 三维图形 图像处理与动画制作
1
3.1 基本二维绘图 基本绘图函数有line、plot和polar函数,line是直角坐 标系中的简单绘图函数,plot是直角坐标系中的常 用绘图函数,polar是极坐标系中的绘图函数。 1)line函数
线,其中曲线条数等于矩阵y的列数; [例]使用plot函数的最简单形式绘制实矩阵的二维图形
y=[1 2 3;4 6 8;10 12 20] plot(y)
5
3.1 基本二维绘图 2)plot函数
当y为复数矩阵时, plot(y)是绘制元素实部为横坐标,元素虚
x=-1:0.1:5; y=[3*cos(x);cos(x);cos(x+0.1*pi)]; plot(x,y)
10
3.1 基本二维绘图 拓展:例 在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)
拓展1:如果去掉“hold on””hold off”语句会怎 样?2:如果用不同纵坐标方 拓展 式来绘制,程序语句如何 写?
0.5xcos(4πx)
18
3.1 基本二维绘图 (6) plot函数可以设置曲线样式 MATLAB提供了一些绘图选项,用于确定所绘曲线 的线型、颜色和数据点标记符号,它们可以组合 使用。例如,“b-.”表示蓝色点划线,“y:d”表示黄 色虚线并用菱形符标记数据点。当选项省略时, MATLAB规定,线型一律用实线,颜色将根据曲 线的先后顺序依次。 要设置曲线样式可以在plot函数中加绘图选项,其 调用格式为: plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)
程序如下: t=0:pi/50:2*pi; r=sin(t).*cos(t); polar(t,r,'-*');
'-*' 表示实线星号
polar函数不能对多 组变量同时进行绘图
23
3.2 其他二维图形 1).极坐标polar函数绘图 拓展:对比以下两段程序,分别绘制极坐标图 程序1如下: t=0:0.1:2*pi; r=sin(3*t); polar(t,r, 'r-o'); 程序2如下: t=0:0.1:2*pi; r=cos(2*t); polar(t,r,'g-d');
12
3.1 基本二维绘图 2)plot函数 (3) plot函数可以同时对多组变量进行绘图。
[例]使用plot函数对多组变量同时进行绘图
x=0:0.5:10; y1=cos(x) y2=sin(x) y3=tan(x) plot(x,y1,x,y2,x,y3)
扩展1:三条线的x横 坐标一样,是否可以把 后面的两个x省略?
25
3.2 其他二维图形 2).对数坐标图形
MATLAB提供了绘制对数和半对数坐标曲线的函数,调用格 式为:
semilogx(x1,y1,选项1,x2,y2,选项2,…) semilogy(x1,y1,选项1,x2,y2,选项2,…) 以上两个函数分别以x轴和y轴为对数坐标 loglog(x1,y1,选项1,x2,y2,选项2,…) 是双对数坐标,即x轴和y轴都是对数坐标
32其他二维图形函数名功能介绍函数名功能介绍area填充绘图fplot函数绘制bar柱状图hist直方图barh水平柱状图paretopareto图comet彗星图pie饼图errorbar误差带图plotmatrix分散矩阵绘制ezplot简单绘制函数图ribbon三维图的二维条状显示ezpolar简单绘制极坐标图scatter散射图feather矢量图stem离散序列火柴杆状图fill多边形填充stairs阶梯图gplot拓扑图rose极坐标系下的直方图compass与feather函数类似的矢量图quiver向量场291柱状图barbarhbarxy
x=[-1.1 2 3 5.6;-2 1.3 5.7 8;-8 5 2.3 6] y=randn(3,4) plot(x,y)
9
3.1 基本二维绘图 2)plot函数
当x为向量,y是有一维和x同维的矩阵时, plot函数以x为曲线横 坐标,对x和y的每一行或列画线,其中曲线条数等于矩阵y的 另一维数; [例]使用plot函数的常用形式绘制向量和矩阵的二维图形
X1,y1 扩展:绘制结果是 几条线?如何分辨 是哪个函数对应的 曲线?
X3,y3
X2,y2
X1,y1-1
14
3.1 基本二维绘图 (4) plot函数可以绘制具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标 度的两个图形,可以使用plotyy绘图函数。调用 格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横 坐标的标度相同,纵坐标有两个,左纵坐标用于 x1,y1数据对,右纵坐标用于x2,y2数据对。
使用plot函数的常用形式 绘制两同维向量的二维图 形
11
3.1 基本二维绘图 2)plot函数
(3) plot函数可以同时对多组变量进行绘图,用法: plot(x1,y1,x2,y2,…,xn,yn):对多组变量同时进行绘图,不同 组之间互不影响。 当输入参数都为向量时,x1和y1,x2和y2,…,xn和yn分 别组成一组向量对,每一组向量对的长度可以不同。每一 向量对可以绘制出一条曲线,这样可以在同一坐标内绘制 出多条曲线。 当输入参数有矩阵形式时,配对的x,y按对应列元素为横、 纵坐标分别绘制曲线,曲线条数等于矩阵的列数。
16
3.1 基本二维绘图
(5)图形保持 hold on/off命令控制是保持原有图形还是刷新原有 图形,不带参数的hold命令在两种状态之间进行 切换。
17
3.1 基本二维绘图
[例] 采用图形保持,在同一坐标内绘制曲线y1=0.2e-
和y2=2e-0.5xcos(πx)。其中, x=0:pi/100:2*pi; 程序如下: x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); plot(x,y1) hold on y2=2*exp(-0.5*x).*cos(pi*x); plot(x,y2); hold off
注意:代表颜色的字母大小写都可以?!! 第三个和第四个图的画图选项有何区别?结果有影响
21
3.1 基本二维绘图 [例] 在同一坐标内,分别用不同线型和颜色绘制曲线y1=0.2e0.5xcos(4πx)
和y2=2e-0.5xcos(πx),标记两曲线交叉点。
程序如下:
x=linspace(0,2*pi,1000); y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); k=find(abs(y1-y2)<1e-2); %查找y1与y2相等点(近似相等)的下标 %取y1与y2相等点的x坐标 x1=x(k); y3=0.2*exp(-0.5*x1).*cos(4*pi*x1); %求y1与y2值相等点的y坐标 plot(x,y1,x,y2,'k:',x1,y3,'bp');
7
3.1 基本二维绘图 2)plot函数
当x和y为同维向量时, 为同维向量时 plot函数功能和line函数相同; [例]使用plot函数的常用形式绘制两同维向量的二维图形
x=0:0.75:3.5 y=3*x plot(x,y)
8
3.1 基本二维绘图 2)plot函数
当x和y为同维矩阵时, plot函数以矩阵x和y的列元素作为横、 纵坐标绘制曲线,其中曲线的条数等于矩阵的列数; [例]使用plot函数的常用形式绘制双矩阵的二维图形
‘k‘ 黑色 ‘bp‘ 蓝色正五边形
22
3.2 其他二维图形 1).极坐标polar函数绘图
polar函数用来绘制极坐标图,其调用格式为:
polar(theta,rho,选项) 其中theta为极坐标极角,rho为极坐标矢径,选项的 内容与plot函数相似。
[例] 绘制r=sin(t)cos(t)的极坐标图,并标记数据点。
20
二维图形常用设置选项
3.1 基本二维绘图 [例]使用plot函数分别绘制不同线型和颜色的二维图形。 程序如下:
x=0:0.1:5; y=cos(x); subplot(2,2,1) plot(x,y,'-') title('点画线') subplot(2,2,2) plot(x,y,'d') title('菱形') subplot(2,2,3) plot(x,y,'g-.') title('绿色点画线') subplot(2,2,4) plot(x,y,'-.g') title('绿色点画线')
15
3.1 基本二维绘图
[例] 用不同标度在同一坐标内绘制曲线
y1=0.2e-0.5xcos(4πx) 和y2=2e-0.5xcos(πx)。其中, x=0:pi/100:2*pi;
程序如下:
x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); plotyy(x,y1,x,y2);
具体用法: Line(x,y): x、y都是一维数组,line函数将数组(x(i),y(i))中的各 点用线段连接起来,形成一条折线。 [例]使用line函数实现已知点连线的功能
x=10:-1.03:1.35 y=cos(x) line(x,y)
2
3.1 基本二维绘图 2)plot函数
有多种调用格式,不同调用格式可以实现不同的功能。
扩展2:前面有个例子(PPT 第10页)也是画了三条曲 线,那个是怎么表达的?
13
3.1 基本二维绘图 拓展:例 分析下列程序绘制的曲线。 x1=linspace(0,2*pi,100); x2=linspace(0,3*pi,100); x3=linspace(0,4*pi,100); y1=sin(x1); y2=1+sin(x2); y3=2+sin(x3); x=[x1;x2;x3]'; y=[y1;y2;y3]'; plot(x,y,x1,y1-1)
19
3.1 基本二维绘图 (6) plot函数可以设置曲线样式
选项 : -. -Y M C R G B W k 含义说明 实线 点线 点画线 虚线 黄色 紫红色 蓝绿色 红色 绿色 蓝色 白色 黑色 选项 . O + * X S D V ^ < > P 含义说明 点 圆 加号 星号 X符号 方形 菱形 下三角 上三角 左三角 右三角 正五边形
(1)plot函数的简单调用格式为:plot(y) 当y为实向量时, 以该向量元素的下标为横坐标,元 素值为纵坐标画出一条连续曲线,实际上是绘制折 线图; 当y为实矩阵时, plot(y)绘制矩阵y的列元素相对其下 标的曲线,其中曲线条数等于矩阵y的列数; 当y为复数矩阵时, plot(y)是绘制元素实部为横坐标, 元素虚部为纵坐标的曲线。
部为纵坐标的曲线。 [例]使用plot函数的最简单形式绘制复数矩阵的二维图形
x=[1 2 3;4 6 8] y=[-1.2 0 2.1;3 5.2 8] z=x+y*i plot(z)
6
3.1 基本二维绘图 2)plot函数 (2)plot函数的常用调用格式为:plot(x,y) 当x和y为同维向量时, 为同维向量时 plot函数功能和line函数相同; 当x和y为同维矩阵时, plot函数以矩阵x和y的列元素作 为横、纵坐标绘制曲线,其中曲线的条数等于矩阵的 列数; 当x为向量,y是有一维和x同维的矩阵时, plot函数以x 为曲线横坐标,对x和y的每一行或列画线,其中曲线 条数等于矩阵y的另一维数; 当x为矩阵,y是向量时情况同上;需注意, plot(x,y)函 数是以y为曲线的纵坐标。
24
• 蓝翔的技校生的标准是记住“修车的过程”就可以 了,大学的理科生必须还要思考、学习“车为什么 这么修”,更要去研究“怎么修更好”。这种思考的 能力和欲望就是素质教育培养的内容,这也是技 工和科学家的本质区别,更是大学和技校的本质 区别。说的再简单一点就是四个字——君子不器 。 • 素质教育的目的是什么? • 一,培养健全的人格 • 二,培养学习的能力 • /blog-882964742390.lot函数
当y为实向量时, 以该向量元素的下标为横坐标,元素值为纵坐
标画出一条连续曲线,实际上是绘制折线图; [例]使用plot函数的最简单形式绘制实向量的二维图形
x=[-2.1 2.8 0 -1.9 2.9] plot(x)
4
3.1 基本二维绘图 2)plot函数
第3章 MATLAB绘图
3.1 3.2 3.3 3.4 3.5 基本二维绘图 其他二维图形 图形处理技术 三维图形 图像处理与动画制作
1
3.1 基本二维绘图 基本绘图函数有line、plot和polar函数,line是直角坐 标系中的简单绘图函数,plot是直角坐标系中的常 用绘图函数,polar是极坐标系中的绘图函数。 1)line函数