天天看點

MATLB|可視化學習(plot和bar)

目錄

1 概述

2 線圖plot

2.1 建立線圖

2.2 繪制多個線條

2.3 利用矩陣建立線圖

2.4 指定線型

2.5 指定線型、顔色和标記

2.5 在特定的資料點顯示标記

2.6 指定線寬、标記大小和标記顔色

2.7 添加标題和軸标簽

2.8 Linestyle -線型

2.9 Marker -标記符号

2.10 Color -線條顔色

 3 條形圖bar 

3.1 建立條形圖

3.2 指定條形位置

3.3 指定條形寬度

3.4 顯示條形組

3.5 顯示堆疊條形圖

3.6 顯示具有負資料的堆疊條形

3.7 指定分類資料

3.8 指定條形顔色

3.9 指定條形和輪廓顔色

MATLB|可視化學習(plot和bar)

1 概述

科研中經常需要畫圖,這一次,我們詳細對制圖進行講解。

2 線圖plot

2.1 建立線圖

将 

x

 建立為由 0 和 2π 之間的線性間隔值組成的向量。在各值之間使用遞增量 π/100。将 

y

 建立為 

x

 的正弦值。建立資料的線圖。

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
           
MATLB|可視化學習(plot和bar)

2.2 繪制多個線條

将 

x

 定義為 100 個介于 −2π 和 2π 之間的線性間隔值。将 

y1

 和 

y2

 定義為 

x

 的正弦和餘弦值。建立上述兩個資料集的線圖。

x = linspace(-2*pi,2*pi);
y1 = sin(x);
y2 = cos(x);

figure
plot(x,y1,x,y2)
           
MATLB|可視化學習(plot和bar)

2.3 利用矩陣建立線圖

将 

Y

 定義為 

magic

 函數傳回的 4×4 矩陣。

Y = magic(4)
           
Y = 4×4

    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

      
建立 

Y

 的二維線圖。MATLAB®将矩陣的每一列繪制為單獨的線條。
figure
plot(Y)
           
MATLB|可視化學習(plot和bar)

2.4 指定線型

繪制三條正弦曲線,每條曲線之間存在較小的相移。第一條曲線使用預設的線型。為第二條曲線指定虛線樣式,為第三條曲線指定點線樣式。

x = 0:pi/100:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);

figure
plot(x,y1,x,y2,'--',x,y3,':')
           
MATLB|可視化學習(plot和bar)

MATLAB按預設的色序循環使用線條顔色。

2.5 指定線型、顔色和标記

繪制三條正弦曲線,每條曲線之間存在較小的相移。第一條正弦曲線使用綠色線條,不帶标記。第二條正弦曲線使用藍色虛線,帶圓形标記。第三條正弦曲線隻使用青藍色星号标記。

x = 0:pi/10:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);

figure
plot(x,y1,'g',x,y2,'b--o',x,y3,'c*')
           
MATLB|可視化學習(plot和bar)

2.5 在特定的資料點顯示标記

通過指定标記符号并将 

MarkerIndices

 屬性設定為名稱-值對組,建立一個線圖并每隔四個資料點顯示一個标記。

x = linspace(0,10);
y = sin(x);
plot(x,y,'-o','MarkerIndices',1:5:length(y))
           
MATLB|可視化學習(plot和bar)

2.6 指定線寬、标記大小和标記顔色

建立線圖并使用 

LineSpec

 選項指定帶正方形标記的綠色虛線。使用 

Name,Value

 對組來指定線寬、标記大小和标記顔色。将标記邊顔色設定為藍色,并使用 RGB 顔色值設定标記面顔色。

x = -pi:pi/10:pi;
y = tan(sin(x)) - sin(tan(x));

figure
plot(x,y,'--gs',...
    'LineWidth',2,...
    'MarkerSize',10,...
    'MarkerEdgeColor','b',...
    'MarkerFaceColor',[0.5,0.5,0.5])
           
MATLB|可視化學習(plot和bar)

2.7 添加标題和軸标簽

使用 

linspace

 函數将 

x

 定義為 0 到 10 之間 150 個值組成的向量。将 

y

 定義為 

x

 的餘弦值。

x = linspace(0,10,150);
y = cos(5*x);
           

 建立餘弦曲線的二維線圖。使用 RGB 顔色值将線條顔色更改為藍綠色。使用 

title

xlabel

 和 

ylabel

 函數為圖形添加标題和軸标簽。

figure
plot(x,y,'Color',[0,0.7,0.9])

title('2-D Line Plot')
xlabel('x')
ylabel('cos(5x)')
           
MATLB|可視化學習(plot和bar)

2.8 Linestyle -線型

線型、标記和顔色,指定為包含符号的字元向量或字元串。符号可以按任意順序顯示。您不需要同時指定所有三個特征(線型、标記和顔色)。例如,如果忽略線型,隻指定标記,則繪圖隻顯示标記,不顯示線條。

示例: 

'--or'

 是帶有圓形标記的紅色虛線

MATLB|可視化學習(plot和bar)

2.9 Marker -标記符号

标記符号,指定為下表中列出的值之一。預設情況下,對象不顯示标記。指定标記符号可在每個資料點或頂點添加标記。

MATLB|可視化學習(plot和bar)

2.10 Color -線條顔色

線條顔色,指定為 RGB 三元組、十六進制顔色代碼、顔色名稱或短名稱。

對于自定義顔色,請指定 RGB 三元組或十六進制顔色代碼。

  • RGB 三元組是包含三個元素的行向量,其元素分别指定顔色中紅、綠、藍分量的強度。強度值必須位于 

    [0,1]

     範圍内,例如 

    [0.4 0.6 0.7]

  • 十六進制顔色代碼是字元向量或字元串标量,以井号 (

    #

    ) 開頭,後跟三個或六個十六進制數字,範圍可以是   到 

    F

    。這些值不區分大小寫。是以,顔色代碼 

    '#FF8800'

     與 

    '#ff8800'

    '#F80'

     與 

    '#f80'

     是等效的。
  • 示例: 

    'blue'

    示例: 

    [0 0 1]

    示例: 

    '#0000FF'

此外,還可以按名稱指定一些常見的顔色。下表列出了命名顔色選項、等效 RGB 三元組和十六進制顔色代碼。

MATLB|可視化學習(plot和bar)

以下是 MATLAB 在許多類型的繪圖中使用的預設顔色的 RGB 三元組和十六進制顔色代碼。

MATLB|可視化學習(plot和bar)

 3 條形圖bar 

3.1 建立條形圖

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y)
           

MATLB|可視化學習(plot和bar)

3.2 指定條形位置

指定沿 x 軸的條形位置。

x = 1900:10:2000;
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(x,y)
           
MATLB|可視化學習(plot和bar)

3.3 指定條形寬度

将各條形的寬度設定為各條形可用總空間的 40%。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,0.4)
           
MATLB|可視化學習(plot和bar)

3.4 顯示條形組

顯示四個條形組,每一組包含三個條形。

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y)
           
MATLB|可視化學習(plot和bar)

3.5 顯示堆疊條形圖

為矩陣中的每一行顯示一個條形。每個條形的高度是行中各元素之和。

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y,'stacked')
           
MATLB|可視化學習(plot和bar)

3.6 顯示具有負資料的堆疊條形

将 

x

 定義為一個包含三個年份值的向量。将 

y

 定義為包含負值和正值組合的矩陣。在條形圖中顯示這些值。

x = [1980 1990 2000];
y = [15 20 -5; 10 -17 21; -10 5 15];
bar(x,y,'stacked')
           
MATLB|可視化學習(plot和bar)

3.7 指定分類資料

訓示條形圖類别的一種方法是将 

X

 指定為分類數組。

bar

 函數使用經過排序的類别清單,是以條形的顯示順序可能與您預期的有所不同。要保留順序,請調用 

reordercats

 函數。

将 

X

 定義為分類數組,并調用 

reordercats

 函數來指定條形的順序。然後将 

Y

 定義為條形高度向量,并顯示條形圖。

X = categorical({'Small','Medium','Large','Extra Large'});
X = reordercats(X,{'Small','Medium','Large','Extra Large'});
Y = [10 21 33 52];
bar(X,Y)
           
MATLB|可視化學習(plot和bar)

3.8 指定條形顔色

使用紅色條形建立一個條形圖。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'r')
           
MATLB|可視化學習(plot和bar)

3.9 指定條形和輪廓顔色

使用 RGB 三元組設定條形内部顔色和輪廓顔色。設定條形輪廓的寬度。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',1.5)
           
MATLB|可視化學習(plot和bar)