通信系統仿真(一些簡單的MATLAB函數學習)(繪圖函數)(三)

一、二維圖形的基本繪製函數

plot(x,y,’s’)
x,y 是相同類型的等長向量
s 可選,用於控制圖形屬性
原理: 點到線

關於s的屬性選擇
在這裏插入圖片描述
函數 plot 常用的使用格式

  • plot(x,y): 單條曲線
  • plot(x1,y1,x2,y2,…): 多條曲線
  • plot(x,y,’s’): 帶屬性修飾的曲線
  • ‘s’ : 屬性開關描述自符串變量

二、二維圖形的窗口繪製函數

繪製圖形窗口的步驟:
(1). 曲線數據準備:橫、縱座標的數據變量。
(2). 指定圖形窗口:默認是打開Figure 1窗口。
(3). 確定對應繪圖函數。
(4). 設置曲線的繪製方式:線型、色彩、數據點型。
(5). 設置座標軸:座標的範圍、刻度。
(6). 圖形註釋:圖名、座標名、圖例、文字說明。
(7). 圖形的精細修飾:利用圖形句柄操作。

1.窗口繪製函數

(1). 指定圖形窗口:figure(n) ---- 產生新圖形窗口。
(2). 同一窗口多個子圖:subplot(m,n,k) ---- (m*n)幅子圖中的第k幅爲當前圖。
(3). 同一窗口多次疊繪
hold on ---- 當前座標系和圖形保留
hold off ---- 當前座標系和圖形不保留
hold ---- 以上兩個命令互相切換
(4). 雙縱座標圖
plotyy(x1,y1,x2,y2) ---- 左右不同縱軸繪製兩條曲線

例子:

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
plotyy(x,y1,x,y2,'plot');
[AX,H1,H2] = plotyy(x,y1,x,y2,'plot');
xlabel('Zero to 20 \musec.')
title('Labeling plotyy')
ylabel(AX(1),‘Left Y')
ylabel(AX(2),‘Right Y')

在這裏插入圖片描述
小結:
函數 plot 常用的使用格式

  • plot(x,y): 單條曲線
  • plot(x1,y1,x2,y2,…): 多條曲線
  • plot(x,y,’s’): 帶屬性修飾的曲線
  • ‘s’ : 屬性開關描述自符串變量

2.圖形修飾控制函數

title —— 給圖形加標題
xlabel —— 給x軸加標註
ylabel —— 給y軸加標註
legend —— 添加圖例
gtext —— 利用鼠標將標註加到圖形任意位置
grid on/off —— 打開/關閉座標網格線
axis —— 控制座標軸刻度

例如:

clear
t=0:0.1:3*pi;
y1=sin(t);
y2=cos(t);
plot(t,y1,'r',t,y2,'b--');
s=['sin(t)';'cos(t)'];
title('正弦和餘弦曲線');
legend('正弦','餘弦‘)
xlabel('時間')
ylabel('正弦&餘弦')
grid on;
gtext(s) ;
axis([0 3*pi -1.5 1.5 ])

3.其他二維繪圖函數

loglog: 雙軸對數座標繪圖
semilogx: 橫軸對數座標圖
semilogy: 縱軸對數座標圖
polar: 極座標繪圖

例如:

th=(0:.25:180)*pi/180;
th=th+(th==0)*eps;
beita=2*pi*0.65;
F=(cos(beita*cos(th))-cos(beita))./sin(th)/(1-cos(beita));
polar(th,abs(F),'m');
hold on; 
polar(th+pi,abs(F),'m');
polar([th th+pi],[abs(F) abs(F)],'m');

在這裏插入圖片描述

三、三維圖形的窗口繪製函數

(1). plot3函數
plot3(x1, y1, z1, ‘s1’, x2, y2, z2,‘s2’…)
x、 y、 z是同維向量時,繪製以x、 y、 z爲座標的三維曲線;
x、 y、 z是同維矩陣時,繪製三維曲線的條數等於矩陣的列數;
s是指定線型、顏色、數據點型的字符串

clear
t=0:pi/50:10*pi;
plot3(t,sin(t),cos(t),'r:')
grid on

在這裏插入圖片描述
(2).meshgrid函數
[X,Y]=meshgrid(x,y)功能: 以x,y向量爲基準,產生x-y平面的各柵格點座標值的矩陣。將x(1m)和y(1n)向量轉爲(n*m)矩陣。

(3). mesh函數
mesh(x, y, z, c)
meshc ---- 繪製網格圖和基本的等值線圖
meshz ---- 繪製包含零平面的網格圖

(4). surf函數
surf(x,y,z,c)功能: 把網格圖表面的網格圍成的小片區域,用不同顏色填充。

四、特殊圖形的繪製函數

. 條形圖
bar/bar3: 2D/3D 垂直條形圖
barh/bar3h: 2D/3D 水平條形圖
例如:

bar(x,y,width)
y = [5 2 1; 8 7 3; 9 8 6; 5 5 5; 4 3 2];
bar(y)
%或者
bar3(y)

在這裏插入圖片描述
2. 餅狀圖
pie/pie3: 2D/3D餅狀圖

例如:

X = [19.3 22.1 51.6;
34.2 70.3 82.4;
61.4 82.9 90.8;
50.5 54.9 59.1;
29.4 36.3 47.0];
x=sum(X); pie(x)
explode = zeros(size(x));
[m,n] = max(x); explode(n) = 1;
pie(x,explode)

在這裏插入圖片描述
3. 離散數據圖
stem/stem3: 2D/3D離散數據圖
例如:

alpha=0.02; beta=0.5; t=0:4:200;
y=exp(-alpha*t).*cos(beta*t);
stem(t,y)

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章