在MATLAB線圖中,一共有3種類型,分別是
線圖,包括:plot,plot3,stairs,errorbar,area,stackedplot函數(shù)。
對數(shù)圖,包括:loglog,semilogx和semilogx函數(shù),。
函數(shù)圖,包括:fplot,fimplicit和fplot3函數(shù),感覺和ezplot很像,參見
stackedplot函數(shù)專門用來繪制堆疊圖,意思是一組數(shù)據(jù)擁有共同x軸,而y軸數(shù)據(jù)不同。在科研中相對于其他類型圖,雖然不常常出現(xiàn),但偶爾能用到。
注意,注意,注意,stackedplot函數(shù)在2018版本以下是沒有的,只有2018版本及以上才有。
1 堆疊圖stackedplot函數(shù)
1.1 用法
stackedplot(tbl)
stackedplot(tbl,vars)
stackedplot(___,'XVariable',xvar)
stackedplot(X,Y)
stackedplot(Y)
stackedplot(___,LineSpec)
stackedplot(___,Name,Value)
stackedplot(parent,___)
s = stackedplot(___)
stackedplot(tbl) 在堆疊圖中繪制表或時間表的變量。該函數(shù)在垂直層疊的單獨 y 軸中繪制變量。這些變量共享一個公共 x 軸。
如果 tbl 是表,則該函數(shù)繪制變量對行號的圖。
如果 tbl 是時間表,則該函數(shù)繪制變量對行時間的圖。
stackedplot 函數(shù)繪制 tbl 的所有數(shù)值、邏輯、分類、日期時間和持續(xù)時間變量,并忽略具有任何其他數(shù)據(jù)類型的表變量。例如,stackedplot(tbl,vars) 僅繪制 vars 指定的表或時間表變量。
stackedplot( ,'XVariable',xvar) 指定為堆疊圖提供 x 值的表變量。此語法僅支持表,而不支持時間表。例如,stackedplot(X,Y) 繪制 Y 列對向量 X 的圖。
stackedplot(Y) 繪制 Y 的列對其行號的圖。x 軸的刻度范圍是從 1 到 Y 的行數(shù)。
stackedplot( ,LineSpec) 設置線型、標記符號和顏色。您可以將此語法與前面任何語法中的輸入參數(shù)結合使用。例如,stackedplot( ,Name,Value) 使用一個或多個 Name,Value 對組參數(shù)設置堆疊圖的屬性。有關屬性列表,請參閱 StackedLineChart 屬性。可以將此選項與前面語法中的任何輸入參數(shù)組合一起使用。名稱-值對組設置應用于堆疊圖中的所有繪圖。將每個屬性名稱括在引號中。
stackedplot(parent, ) 在 parent 指定的圖窗、面板或選項卡中創(chuàng)建堆疊圖。選項 parent 可以位于前面的語法中的任何輸入參數(shù)組合之前。例如,s = stackedplot(___) 返回 StackedLineChart 對象。創(chuàng)建堆疊圖后,可以使用 s 更改堆疊圖的屬性。有關屬性列表,請參閱 StackedLineChart 屬性。
1.2 示例1
clc
clear all
close all
x = [1:0.1:10];
y(:,1) = sin(x);
y(:,2) = cos(x);
y(:,3) = sin(x).*cos(x);
stackedplot(x,y,'ro');
可以看出,上圖由三個小圖組成,它們公用x軸,但y軸不同。
1.3 示例2
這里我們可以通過句柄對圖形進行更改。
堆疊圖有很多屬性,包括:
例如,可以對x軸和y軸添加名稱。其他屬性類似,直接指定即可。設定時,注意數(shù)據(jù)類型。
clc
clear all
close all
x = [1:0.1:10];
y(:,1) = sin(x);
y(:,2) = cos(x);
y(:,3) = sin(x).*cos(x);
h = stackedplot(x,y,'r-');
h.DisplayLabels = {'y1','y2','y3'};
h.XLabel = {'x-axis'};
1.4 示例3
在堆疊圖的屬性設置時,注意,注意,注意,是對整個圖進行更改,例如,如果將線型改成虛線,那么三個圖都會被改成虛線。
但是,MATLAB也提供了每個圖的屬性操作,可通過整體屬性中的h.LineProperties進行設置,對于每個小的圖形,h.LineProperties下設屬性有顏色、線型、線寬、點大小、圖類型等等,如下
Color,可以為傳統(tǒng)方法,例如‘r’,'b',可以設置RGB三色,如[0.5, 0.5, 0.5]
MarkerFaceColor
MarkerEdgeColor
LineStyle,設置為無時,要用‘none’命令
LineWidth
Marker
MarkerSize
PlotType,這里只能設置為plot,scatter和stairs函數(shù),不能為其他類型
示例如下
clc
clear all
close all
x = [1:0.1:10];
y(:,1) = sin(x);
y(:,2) = cos(x);
y(:,3) = sin(x).*cos(x);
h = stackedplot(x,y,'r-');
h.DisplayLabels = {'y1','y2','y3'};
h.XLabel = {'x-axis'};
h.LineProperties(1).Color = 'b';
h.LineProperties(1).LineWidth = 1.5;
h.LineProperties(2).LineStyle = 'none';
h.LineProperties(2).Marker = 'o';
h.LineProperties(2).MarkerSize = 8;
h.LineProperties(3).PlotType = 'stairs';
h.LineProperties(3).Color = 'k';
h.LineProperties(3).LineWidth = 1.5;
這里,
第一個圖顏色改成藍色,線寬設為1.5;
第二個圖線設置為無,點改為圈,點大小設為8;
第三個圖線型設置為階梯圖,顏色設為黑色,線寬為1.5;
-
RGB
+關注
關注
4文章
798瀏覽量
58547 -
MATLAB仿真
+關注
關注
4文章
176瀏覽量
19934 -
MATLAB命令
+關注
關注
0文章
3瀏覽量
5029
發(fā)布評論請先 登錄
相關推薦
評論