天天看點

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

Matlab學習筆記 Day13

注:僅供學習使用,部分内容來自學校課程課件或網絡,理性探讨。

特殊二維圖形的繪制(specgraph函數庫)

1.條形圖

bar(x,width,style)(縱向)

barh(x,width,style)(橫向)

當x是m × n階的矩陣時,繪制的條形圖以分組或堆積的形式表現。矩陣中每一行元素繪制在一組中,每一列元素繪制在每組中相對應的位置上。其中,width設定條形的相對寬度和控制在一組内條形的間距,預設值為0.8,style指定條形的排列模式,類型有’group’(分組)和 ‘stack’(堆積),預設時采用’group’模式。

圖例:縱向group圖和橫向stack圖

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

樣例代碼參考:

x=[51,82,34,47;67,78,68,90;78,85,65,50]';
subplot(1,2,1); bar(x,'group');
title('Group'); axis([0,5,0,100]);
subplot(1,2,2); barh(x, 'stack'); title('Stack');
           

2.餅圖

pie(x,explode)

x可以是向量或者矩陣。explode是與x同等大小的向量或矩陣,與explode對應的非零值将從餅圖中心分離出來,預設時,餅圖為整體。

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

樣例代碼參考:

x=[51,82,34,47;67,78,68,90;78,85,65,50]';
pie(x(:,1),[0,0,0,1]);title('餅圖');
legend('A','B','C','D');
           

3.散點圖

scatter(x,y,s,c,‘filled’)

其中,x、y、s和c為同等大小的向量。x和y用于定位資料點;s指定繪圖點的大小(以象素為機關),s也可以是一個标量,則所有資料點同等大小;c指定繪圖所使用的色彩,c也可以是一個标量,所有資料點使用同一種顔色;'filled’表示填充繪圖點,預設時,資料點是空心的。

4.誤差條形圖

errorbar(x,y,e,s)

繪制資料點(x(i),y(i))的誤差條形圖。誤差條對稱地分布在yi的上方和下方,長度為ei。

errorbar(x,y,l,u,s)

功能:繪制資料點(x(i),y(i))的誤差條形圖。誤差條分布在yi上方的長度為ui,下方的長度為li。字元串s設定顔色和線型。

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

5.離散杆狀圖

stem (Y) 或 stem (X,Y) 或 stem(X,Y,‘filled’)

繪制資料點X(i),Y(i)的離散杆狀圖

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

6.階梯狀圖

stairs(Y) 或 stairs(X, Y) 或 stairs(X,Y,Style)

繪制資料點X(i),Y(i)的階梯狀圖,Style指定繪圖方式(顔色、線型、點形)。

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

7.面域圖

area(Y)或area(X,Y)

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

參考代碼:

x=0:pi/20:2*pi; y=sin(x); area(x,y)
axis([0  2*pi  -1.2 1.2])
title('area')
           

8.填充圖

fill(x1,y1,選項1,x2,y2,選項2,…)

fill函數按向量元素下标漸增次序依次用直線段連接配接x、y對應元素定義的資料點。假若這樣連接配接所得折線不封閉,那麼MATLAB将自動把該折線的首尾連接配接起來,構成封閉多邊形,然後将多邊形内部塗滿指定的顔色。

9.複數向量圖

compass(z)或compass(u,v):羅盤圖

featuher(z)或faether(u,v):羽毛圖

其中,z為複數向量,u、v分别為複數向量的實部和虛部

參考代碼:

theta = (-120:10:60)*pi/180; 
r = 2*ones(size(theta));
[u,v] = pol2cart(theta,r);
subplot(1,2,1);compass(u,v,'r');title('compass');
subplot(1,2,2);feather(u,v,'b'); title('feather')
           

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

10.彗星圖

comet(x,y)

繪制資料點x(i),y(i)的彗星軌迹圖。

圖例:

MATLAB學習筆記13(特殊二維圖形的繪制)Matlab學習筆記 Day13

代碼參考樣例:

t=-pi:pi/1000:pi;
comet(t, tan(sin(t))-sin(tan(t)))
title('comet')
           

注意:MATLAB中圖形的顔色可以使用colormap()更改繪制色系,使圖形的繪制色彩更加豐富,視覺效果更加良好。