對於函數而言,每給一組 f ( x , y ) ,便能求得其相對應的高度 z...

24
第第第 第第第第第第 本本本本本本 第第 Matlab 第第第第第第第 plot() 第第第第第第第 第第第第第第第 fplot() 第 ezplot() 第第 第第第第第第 Property editor 第第第第第 1

Upload: madra

Post on 05-Feb-2016

55 views

Category:

Documents


0 download

DESCRIPTION

第五章 三維空間繪圖. 5.1 基本三維繪圖. 對於函數而言,每給一組 f ( x , y ) ,便能求得其相對應的高度 z ,如下圖所示:. 5.1.1 繪製三維的網格圖. 利用 mesh 函數可繪製三維的網格圖:. >> xx=[2 3 4;2 3 4;2 3 4;2 3 4]; >> yy=[0 0 0;1 1 1;2 2 2;3 3 3] >> zz=[7 7 6;7 7 7;8 8 9;8 8 9] >> mesh(xx,yy,zz). Matlab 提供了 meshgrid 函數,可以建立 xx 與 yy 矩陣:. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

第五章 二維平面繪圖

本章學習目標 • 學習 Matlab 的基本繪圖函數 plot()

• 編修函數的圖形• 學習簡單易用的 fplot() 與 ezplot() 函數• 學習如何利用 Property editor 來編修圖形

1

Page 2: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

基本的二維繪圖函數

2

>> x=[0 2 4 7 10 12]x = 0 2 4 7 10 12

>> y=[3 4 0 6 1 3]y = 3 4 0 6 1 3

>> plot(x,y)

Page 3: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

3

由資料點取出橫座標與縱座標

Page 4: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

簡單的二維繪圖範例

4

>> x=linspace(0,6,100);

>> y=sin(x.^2)./(x+1);

>> plot(x,y)

Page 5: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

二維圖形的編修

5

Page 6: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

控制資料點的顯示符號

6

Page 7: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

7

控制線條樣式與顏色

Page 8: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

二維繪圖範例 (1/2)

8

>> x=linspace(1,8,36);

>> y1=sin(2*x)./x;

>> plot(x,y1,'-sb')

>> plot(x,y1,':ro')

Page 9: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

二維繪圖範例 (2/2)

9

>> plot(x,y1,':ro',x,y2,'-b*')>> plot(x,y1,'-

ro','MarkerSize', 12,'MarkerFaceColor','y')

>> plot(x,y1,'-bs','LineWidth',2,

'MarkerSize',12,'MarkerEdgeColor', 'r','MarkerFaceColor','y')

Page 10: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

10

更改繪圖的範圍與顯示方式

>> x=linspace(0,10,64);

>> y=x.*cos(4*x)./12;

>> plot(x,y,'-ro') >> axis([0,6,-0.6,0.6]) >> axis([-inf,inf,-2,2])

Page 11: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

11

設定是否顯示圖形的格線與外框

>> plot(x,y,'-bo') >> grid on >> grid off; box off

Page 12: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

12

修改 x與 y軸的顯示比例

>> x=linspace(0,5,100);

>> y=2*sin(x.^2)./(x+1);

>> plot(x,y) >> axis square >> axis equal >> axis equal tight

Page 13: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

13

於已存在的圖中加入新圖

>> x=linspace(0,2*pi,36);

>> y1=sqrt(x).*sin(2*x);

>> y2=sqrt(x).*cos(2*x);>> plot(x,y1,'-rs'); hold on >> plot(x,y2,'-bo'); hold off

Page 14: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

14

建立新的繪圖視窗

>> x=linspace(0,2*pi,100);

>> plot(x,x.*sin(x))

>> figure>> plot(x,x.*cos(x))

>> figure(5);>> plot(x,x.*cos(x.^2))

Page 15: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

將數張圖合併成一張大圖 (1/2)

15

>> x=linspace(0,2*pi,50);

>> subplot(2,2,1) >> plot(x,sin(x))

Page 16: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

16

>> subplot(2,2,2);plot(x,cos(x));>> grid on

>> subplot(2,2,3);plot(x,sqrt(x))

>> hold on

>> plot(x,sqrt(x)+sin(2*x))

>> hold off

>> subplot(2,2,4);plot(x,floor(x))

>> close all

將數張圖合併成一張大圖 (2/2)

Page 17: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

17

於圖形內加入文字

>> x=linspace(0,pi,100);

>> plot(x,sin(x.^2))>> title('plot of sin(x^2)') >> xlabel('time');

>> ylabel('value');

Page 18: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

18

>> x=linspace(0,2*pi,36);

>> y1=x.*cos(x);y2=x.*sin(x);

>> plot(x,y1,'-rs',x,y2,'-bo')

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

>> text(2,2.5,'x*sin(x)')>> text(5.5,3,'x*cos(x)')

加入圖形的註解

Page 19: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

19

更簡潔的繪圖函數

>> fplot('x-cos(x^3)-sin(2*x^2)',[-3,3]) >> fplot('x-cos(x^3)',[-3,3],'o')

Page 20: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

20

繪圖函數 ezplot()

>> ezplot('x^2*sin(x^2)/exp(x)',...[0,10,-0.7,0.7])

>> ezplot('x^3+4*x^2-3*x+1-y^2')

>> ezplot('cos(2*t)','sin(6*t)',[0,pi]),...axis([-1.5,1.5,-1.2,1.2])

Page 21: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

21

利用「屬性編輯區」編修圖形

Page 22: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

「 Data Cursor 」按鈕 • 繪圖工具列上的按鈕可對圖形進行旋轉、縮放,或者是進

行其它的編修

22

Page 23: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

Exercises(1/2)• 請繪製下列二曲線於同一張圖形內,並以不同顏色、線型與標記區分。

• 請繪製下列二曲線於同一張圖形內,以不同顏色、線型與標記區分,並加入不同之圖例註解文字及軸標題。

23

1300),23sin()(2

1,1.1,1.0)),cos()(cos()(1 0220

ttety

fttf

ty

t

ddd

60),cos()(2

)sin()(135.0

25.0

ttety

tetyt

t

Page 24: 對於函數而言,每給一組  f ( x , y ) ,便能求得其相對應的高度  z ,如下圖所示:

Exercises(2/2)

• 請利用 fplot函數繪製下列曲線圖形:

• 請利用 ezplot函數繪製下列曲線圖形:

24

60,6sin

2cos.2

42,25,1)cos(sin),(.1

2

ttey

tex

yxyxyyxf

t

t

44),2/cos()(sin)( 2 xxxxf