38
吴吴吴 2002.11 Matlab 吴吴吴吴吴 Matlab 吴吴吴吴吴 1. 吴吴吴吴吴 2. 吴吴吴吴吴吴吴 3. 吴吴吴吴吴吴吴 4. 吴吴吴吴吴吴 5. 吴吴吴吴 6. 吴吴吴吴吴吴吴 7. 吴吴吴吴 8. 吴吴吴吴吴吴 help graph2d help graph3d

Matlab 的图形功能

  • Upload
    monita

  • View
    135

  • Download
    0

Embed Size (px)

DESCRIPTION

Matlab 的图形功能. help graph2d help graph3d. 图形的生成 二维图形的绘制 三维图形的绘制 图形标注处理 图形控制 图形窗口的控制 图形输出 图形窗口菜单. 1. 图形的生成. 二维图形 plot(X,Y): 绘制向量 Y 对向量 X 的图形,如果 Y 或者 X 为一矩阵,则绘出矩阵的行向量或列向量,元素个数必须对应。 plot(Y): 绘制 Y 的列向量对其坐标索引的图形,若 Y 为复向量(矩阵),则是 Y 的实部对虚部作图。 plot(X,Y,s): s 为代表不同线型、点标、文字的字符串。 - PowerPoint PPT Presentation

Citation preview

Page 1: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

Matlab 的图形功能1. 图形的生成2. 二维图形的绘制3. 三维图形的绘制4. 图形标注处理5. 图形控制6. 图形窗口的控制7. 图形输出8. 图形窗口菜单

help graph2d

help graph3d

Page 2: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

1. 图形的生成1. 二维图形

1. plot(X,Y): 绘制向量 Y 对向量 X 的图形,如果 Y 或者 X 为一矩阵,则绘出矩阵的行向量或列向量,元素个数必须对应。

2. plot(Y): 绘制 Y 的列向量对其坐标索引的图形,若 Y 为复向量(矩阵),则是 Y 的实部对虚部作图。

3. plot(X,Y,s): s 为代表不同线型、点标、文字的字符串。4. plot(X1,Y1,s1,X2,Y2,s2,X3,Y3,s3,……): 绘制组合图

Plot 函数若没有颜色指定,则使用默认值。>> t=0:pi/50:pi*2;x=(t+1).*exp(i*t);y=exp(i*t);plot(y)axis('square')hold onplot(x)

Page 3: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算-6 -4 -2 0 2 4 6 8-6

-5

-4

-3

-2

-1

0

1

2

3

Page 4: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

2. 三维图形1. plot3(x,y,z): x,y,z 向量长度必须相同2. plot3(X,Y,Z): x,y,z 三矩阵大小必须相同,绘出三矩阵列向量

三维图3. plot3(X,Y,Z,s): s 为字符串,定义线型。4. plot3(x1,y1,z1,s1,x2,y2,z2,s2,x3,y3,z3,s3,…): 组合绘图

>> t=0:pi/50:pi*10;

>> plot3(sin(t),cos(t),t);

>> % 绘制螺旋线

Page 5: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

-1-0.5

00.5

1

-1-0.5

00.5

10

10

20

30

40

Page 6: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

5. mesh(X,Y,Z,C): 三维网格面函数, C 为颜色设置6. mesh(X,Y,Z):

7. mesh(x,y,Z) 和 mesh(x,y,Z,C): length(x)=n,length(y)=m, [m,n]=size(Z), 各定点坐标为 (x(j),y(j),Z(i,j)) 。

8. mesh(Z,C) 或 mesh(Z): 默认 x=1:n, y=1:m 。

>> a=eye(20);

>> mesh(a)

Page 7: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

05

1015

20

0

5

10

15

200

0.2

0.4

0.6

0.8

1

>> a=eye(20);

>> mesh(a)

Page 8: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

2. 二维图形绘制• 主要用于慨率分析、误差分析及各种标量场和矢量场

的分析中。1. plot, ezplot, fplot( 前面已介绍 )

2. 对数坐标图:1. semilogx

2. semilogy

3. loglog 用法与 plot 类似

>> x=1:0.1*pi:2*pi;

>> y=sin(x);

>> semilogx(x,y,'-*')

Page 9: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

100

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

>> x=1:0.1*pi:2*pi;>> y=sin(x);>> semilogx(x,y,'-*')

Page 10: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

3. 极坐标图1. polar(theta, rho)

2. polar(theta, rho, s): theta 为弧度表示的角度向量, rho 为幅向量, s 为图形属性设置选项。

>> x=1:0.1*pi:4*pi;

>> y=sin(x/2)+x;

>> polar(x,y,'-')

Page 11: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

5

10

15

30

210

60

240

90

270

120

300

150

330

180 0

>> x=1:0.1*pi:4*pi;

>> y=sin(x/2)+x;

>> polar(x,y,'-')

Page 12: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

4. 双纵坐标图1. plotyy(X1,Y1,X2,Y2)

2. plotyy(X1,Y1,X2,Y2,fun) : fun 为绘图方式,可以为 plot, semilogx, loglog 等。

3. plotyy(X1,Y1,X2,Y2,fun1,fun2) : fun 意义与上式相同,分别对 应 (X1,Y1) 和 (X2,Y2) 。

>> x=1:0.1*pi:2*pi;

>> y=sin(x);

>> z=exp(x);

>> plotyy(x,y,x,z,'plot','semilogy')

Page 13: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

1 2 3 4 5 6 7-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1 2 3 4 5 6 7-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1 2 3 4 5 6 7100

101

102

103

>> x=1:0.1*pi:2*pi;>> y=sin(x);>> z=exp(x);>> plotyy(x,y,x,z,'plot','semilogy')

Page 14: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

5. 二维特殊函数图函数名 说明 函数名 说明

area 填充绘图 fplot 函数图绘制bar 条形图 hist 直方图barh 水平条形图 pareto pareto 图

comet 彗星图 pie 炳状图errorbar 误差带图 plotmatrix 分散矩阵绘制ezplot 简单绘制函数图 ribbon 三维图二维条状显示

ezpolar 简单绘制极坐标图 scatter 散射图feather 矢量图 stem 离散系列炳状图

fill 多边形填充 stairs 阶梯图

Page 15: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

>> x=1:10;

>> y=rand(10,1);

>> bar(x,y);

1 2 3 4 5 6 7 8 9 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Page 16: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

6. 等高线图1. contour(Z, N/V)

2. contour(X,Y,Z,N/V)

Z 为需要作图的数值矩阵, N 为需要绘制的等高线条数, V为定义等高线条数和具体取值的向量, N,V 只能取一。

>> A=rosser;

>> v=[-1000,-500,-100,0,100,500,1000];

>> contour(A,v)

Page 17: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

>> A=rosser;

>> v=[-1000,-500,-100,0,100,500,1000];

>> contour(A,v)

1 2 3 4 5 6 7 81

2

3

4

5

6

7

8

Page 18: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

3. 三维图形的绘制

1. plot (普通三维图)2. mesh (网图绘制)3. contour3: 三维等高线图绘制

>> z=peaks(60);

>> contour3(z,30)

>> grid off

Page 19: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

1020

3040

5060

1020

3040

5060

-10

-5

0

5

10

>> z=peaks(60);>> contour3(z,30)>> grid off

Page 20: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

4. 其它三维图形函数

函数名 说明 函数名 说明

bar3 三维条形图 surfc 着色图与等高线图结合

comet3 三维彗星轨迹图 trisurf 三角形表面图

ezgraph3 函数控制三维图 trimesh 三角形网格图

pie3 三维炳状图 waterfall 瀑布图

sactter3 三维散射图 cylinder 柱面图

stem3 三维离散数据图 sphere 球面图

Page 21: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

40%

30%

10%

20%

>> x=[2,4,6,8];

>> pie3(x,[0, 0,1,0])

Page 22: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

-10-5

05

10

-10

-5

0

5

100

0.2

0.4

0.6

0.8

1

>> x=1:0.05*pi:3*pi;>> r=5+cos(x);>> [a,b,c]=cylinder(r,30);>> mesh(a,b,c);

Page 23: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

4. 图形标注处理1. 图形名称和坐标名称标注

1. title(‘text’) 将文字加到坐标轴的顶部title(‘text’,’Property1’,’PropertyValue1’,’Property2’,’PropertyVa

lue2’,……) 设置图名的特殊属性值H=title(…) 返回用作图名的文字的句炳

2. xlabel(‘text’) 将文字加到当前图的 x 轴附近xlabel(‘text’,’Property1’,’PropertyValue1’,’Property2’,’Property

Value2’,……) 设置 x 轴的特殊属性值H=xlabel(…) 返回用作 x 轴标注的文字的句炳

3. ylabel(‘text’) 将文字加到当前图的 y 轴附近ylabel(‘text’,’Property1’,’PropertyValue1’,’Property2’,’Property

Value2’,……) 设置 y 轴的特殊属性值H=ylabel(…) 返回用作 y 轴标注的文字的句炳

Page 24: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

2. 文字标注1. text(X,Y,’string’) (X,Y) 为图形中加标注处的坐标,如果

为 向量,则每一相应处都应该加标注,‘ string’也可为相 应长度向量。text(X,Y,Z,’string’) 在三维图形中进行标注。>> t=0:0.01:4;>> x=sin(t.^4).*exp(-t);>> y=cos(t.^2).*exp(-t);>> plot(t,x,'r',t,y,'b');>> title(‘an example of label');>> xlabel('t(time/s)');>> ylabel('x or y value');>> text(1.5,0.26,'y=cos(t.^2).*exp(-t)');>> text(0.65,0.6,'x=sin(t.^4).*exp(-t)');

Page 25: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

0 0.5 1 1.5 2 2.5 3 3.5 4-0.4

-0.2

0

0.2

0.4

0.6

0.8

1an example of label

x=sin(t.4).*exp(-t)

y=cos(t. 2).*exp(-t)

x o

r y

valu

e

t(time/s)

>> title(‘an example of label');>> xlabel('t(time/s)');>> ylabel('x or y value');>> text(1.5,0.26,'y=cos(t.^2).*exp(-t)');>> text(0.65,0.6,'x=sin(t.^4).*exp(-t)');

Page 26: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

2. gtext(‘string’) 鼠标指定坐标标注,显示图形窗口,等待鼠标命令或键盘输入,单击后将在选定位置显示文

字。gtext(C) C 为字符串数组,其所定义的每一行字符串

可 放置在相应选定位置。3. legend(string1,string2,string3,…) 放置以 string 为标签的标

注 在当前图的指定图线。legend off 关闭当前图形中的标签标注。legend 当有一个标签时,无变量函数刷新

当前标签标注。如果为多标签时 ,legend(legendhandle)刷新指定标签。

legend(…,Position) 放置标签在指定位置。 0-自动最佳位置 ,1-右上角 ,2-左下角 ,3-左下角 ,4-右下角 ,-1-整图右侧

Page 27: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

1 2 3 4 5 6 7-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1sin(x)cos(x)

>> x=1:0.1*pi:2*pi;

>> y=sin(x);

>> z=cos(x);

>> plot(x,y,x,z)

>> legend('sin(x)','cos(x)')

Page 28: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

5. 图形控制

1. 同一图窗多图绘制1. hold on 保留当前图形及坐标信息,随后图形叠加上去。

hold off 解除 hold on ,返回默认设置,绘新图。hold 改变上一次的 hold 设置, on off之间转换。

2. grid on 在当前图窗中加入分格线。grid off 清除分格线grid 上述两种状态之间转换。

3. axis([xmin xmax ymin ymax]) 设置当前 x 轴和 y 轴刻度范围。axis([xmin xmax ymin ymax zmin zmax]) 三维图刻度设置。axis auto 返回坐标轴的刻度到默认状态,自适应模。axis equal 设置不同坐标轴刻度增量大小相等。

Page 29: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

6. 图形窗口控制

1. figure 生成新的图形窗口,并返回它的句炳。figure(H) 若 H存在,使 H 称为当前窗,若 H 不存在,且 H 为一整数,则生成一名为 H 的图形窗口。gcf 返回当前图窗的句炳。

2. subplot(m,n,p) 或 subplot(m n p) 将图形窗口分隔成m*n 个子窗口,并选择第 p 个为当前窗口。

>> subplot(2,2,1),fplot(‘sin(x)',[0, 2*pi]);

>> subplot(2,2,2),fplot('cot(x)',[0, 2*pi]);

>> subplot(2,2,3),fplot('x*x',[0, 2*pi]);

>> subplot(2,2,4),fplot('exp(x)',[0, 2*pi]);

Page 30: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

0 2 4 6-1

-0.5

0

0.5

1

0 2 4 6-1

-0.5

0

0.5

1

0 2 4 60

10

20

30

40

0 2 4 60

200

400

600

Page 31: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

3. clf 清除当前图窗所有图形。4. shg 显示图形窗口。5. close(H) 以句炳 H关闭图形窗口。

close 关闭当前图窗。close all 关闭所有打开的图窗。

6. refresh 刷新当前窗口。refresh(fig) 刷新图窗 fig 。

Page 32: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

7. 图形输出

1. 图形的复制1. PrintScreen键和 Ctrl+ C键的组合使用。2. 图形窗口的菜单命令: edit-》 copy figure 。复制的图形可以直接在 word 等文本文件中粘贴。

• 图形的打印• matlab 窗口菜单命令: file-》 print… 。• 图形窗口菜单命令: file-》 print… 。• 打印命令: print <filename> -f<figure hand>

Page 33: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

8. 图形窗口菜单

1. file 菜单1. Export :将打开图形输出对话框,该对话框可将图形以 emf,

bmp,eps,ai,jpg,tif,png,pcx,pbm,ppm 等格式保存。2. Page Setup :将打开页面设置对话框,可以分别设置页面尺寸位置、纸张、线性、文本类型、坐标轴和图形等。

3. Print Setup :打开 windows 系统自带得打印设置对话框。〕4. Print Preview :打印预览,同时可以兼容很多其它功能5. Print :打开 windows自带的打印对话框。

Page 34: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

可以改变很多默认设置

Page 35: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

2. edit 菜单1. Figure Properties :打开图形属性设置对话框,可以改变图形风格、标题、显示类型、及信息等。

2. Axes Properties :打开图形坐标轴属性对话框,可以设置坐标得尺度、风格、标注、比例、光源、视点及坐标轴信息。

3. Current Object Properties :打开当前对象属性设置页面,如选中图中的线条,将打开线对象属性设置页面。

3. view 菜单分别决定不同工具条的显示。

4. insert 菜单通过该菜单可以向图中添加不同的对象,如坐标轴、标注等。

Page 36: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

5. Tools 菜单1. Edit Plot :使图形处于编辑状态。2. Zoom In/Zoom Out :分别对应图形的放大和缩小功能。3. Rotate 3D :将使图形处于三维旋转状态。4. Basic Fitting :打开数据拟合对话框,可在对话框中选取拟合

的数据源、拟合方式、拟合函数的显示、数值的有效位数以及是否显示残差等,并可以控制残差显示的方式(线图、条状图等)以及最大残差模等。

5. Data Statistics :对数据进行统计分析,并打开图形数据统计分析对话框,该对话框可以获得数据的最小值、最大值、平均值、中值以及均方差等。

6. Windows 、 Help 菜单

Page 37: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算

Page 38: Matlab 的图形功能

吴晓华 2002.11 Matlab 与科学计算