matlab中subplot函數的功能
2011-03-29 16:38:55| 分類: matlab | 標簽:subplot |字號大中小訂閱
subplot
功能
分割figure,創建子坐標系
語法
h = subplot(m,n,p) or subplot(mnp)
subplot(m,n,p,'replace')
subplot(m,n,P)
subplot(h)
subplot('Position',[left bottom width height])
subplot(..., prop1, value1, prop2, value2, ...)
h = subplot(...)
描述
★h = subplot(m,n,p)/subplot(mnp) 將figure划分為m×n塊,在第p塊創建坐標系,並返回它的句柄。當m,n,p<10時,可以簡化為subplot(mnp)或者subplot mnp
(注:subplot(m,n,p)或者subplot(mnp)此函數最常用:subplot是將多個圖畫到一個平面上的工具。其中,m表示是圖排成m行,n表示圖排成n列,也就是整個figure中有n個圖是排成一行的,一共m行,如果第一個數字是2就是表示2行圖。p是指你現在要把曲線畫到figure中哪個圖上,最后一個如果是1表示是從左到右第一個位置。 )
★subplot(m,n,p,'replace')如果所指定的坐標系已存在,那創建新坐標系替換它
★subplot(m,n,P)此時p為向量,表示將P中指定的小塊合並成一個大塊創建坐標系,P中指定的小塊可以不連續,甚至不相連。
比如subplot(2,3,[2 5])表示將第2和5小塊連成一個大塊;subplot(2,3,[2 6])由於2和6不連續也不相連,此時表示將第2、3、5和6四塊連成一個大塊,相當於subplot(2,3,[2 3 5 6])
★subplot(h) 將坐標系h設為當前坐標系,相當於axes(h)
★subplot('Position',[left bottom width height])在指定位置創建一個新坐標系,等效於axes('Position',[left bottom width height])
★subplot(..., prop1, value1, prop2, value2, ...)在創建坐標系時,同時設置相關屬性,axes屬性參見附錄
★h = subplot(...) 返回所創建坐標系的句柄
注意
1)使用subplot新建的axes塊如果與已存在塊重疊,MATLAB將刪除已存在的axes並創建新的axes,除非已存在和需要創建的axes完全重合(此時相當於將它置為當前坐標系),此時如果想刪除重建的話,需要使用'replace'參數
2)subplot(1,1,1)清空當前窗口所有坐標系對象,並創建一個默認的坐標系。注意此時subplot(1,1,1)和subplot(111)不完全等效,subplot(111)執行完以后,沒有任何直觀上的反應,它只是促使figure在下次調用繪圖命令之前執行清空圖形命令clf reset,接着創建一個默認坐標系。也就是說subplot(111)相當於將subplot(1,1,1)的操作分開了。由於subplot(111)執行完並沒有創建新坐標系,故沒法返回句柄,也就是說h=subplot(111)是錯誤的
舉例
t=0:0.001:1;
y1=sin(10*t);
y2=sin(15*t);
subplot(211)
plot(t,y1)
subplot(212)
plot(t,y2)
