亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MATLAB中subplot函數(shù)的語法與使用實例

 更新時間:2022年08月16日 09:51:59   作者:jk_101  
subplot()是將多個圖畫到一個平面上的工具,下面這篇文章主要給大家介紹了關(guān)于MATLAB中subplot函數(shù)的語法與使用的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

subplot函數(shù)的功能是在各個分塊位置創(chuàng)建坐標區(qū)。

語法

subplot(m,n,p)
subplot(m,n,p,'replace')
subplot(m,n,p,'align')
subplot(m,n,p,ax)
subplot('Position',pos)
subplot(___,Name,Value)
ax = subplot(___)
subplot(ax)

說明

subplot(m,n,p) 將當前圖窗劃分為 m×n 網(wǎng)格,并在 p 指定的位置創(chuàng)建坐標區(qū)。MATLAB® 按行號對子圖位置進行編號。第一個子圖是第一行的第一列,第二個子圖是第一行的第二列,依此類推。如果指定的位置已存在坐標區(qū),則此命令會將該坐標區(qū)設(shè)為當前坐標區(qū)。

subplot(m,n,p,'replace') 刪除位置 p 處的現(xiàn)有坐標區(qū)并創(chuàng)建新坐標區(qū)。

subplot(m,n,p,'align') 創(chuàng)建新坐標區(qū),以便對齊圖框。此選項為默認行為。

subplot(m,n,p,ax) 將現(xiàn)有坐標區(qū) ax 轉(zhuǎn)換為同一圖窗中的子圖。

subplot('Position',pos) 在 pos 指定的自定義位置創(chuàng)建坐標區(qū)。使用此選項可定位未與網(wǎng)格位置對齊的子圖。指定 pos 作為 [left bottom width height] 形式的四元素向量。如果新坐標區(qū)與現(xiàn)有坐標區(qū)重疊,新坐標區(qū)將替換現(xiàn)有坐標區(qū)。

subplot(___,Name,Value) 使用一個或多個名稱-值對組參數(shù)修改坐標區(qū)屬性。在所有其他輸入?yún)?shù)之后設(shè)置坐標區(qū)屬性。

ax = subplot(___) 創(chuàng)建一個 Axes 對象、PolarAxes 對象或 GeographicAxes 對象。以后可以使用 ax 修改坐標區(qū)。

subplot(ax) 將 ax 指定的坐標區(qū)設(shè)為父圖窗的當前坐標區(qū)。如果父圖窗尚不是當前圖窗,此選項不會使父圖窗成為當前圖窗。

示例

上部和下部子圖

創(chuàng)建帶有兩個堆疊子圖的圖窗。在每個子圖上繪制一條正弦波。

subplot(2,1,1);
x = linspace(0,10);
y1 = sin(x);
plot(x,y1)
 
subplot(2,1,2); 
y2 = sin(5*x);
plot(x,y2)

如圖所示:

子圖的象限 

創(chuàng)建一個分為四個子圖的圖窗。在每個子圖上繪制一條正弦波并為每個子圖指定標題。

subplot(2,2,1)
x = linspace(0,10);
y1 = sin(x);
plot(x,y1)
title('Subplot 1: sin(x)')
 
subplot(2,2,2)
y2 = sin(2*x);
plot(x,y2)
title('Subplot 2: sin(2x)')
 
subplot(2,2,3)
y3 = sin(4*x);
plot(x,y3)
title('Subplot 3: sin(4x)')
 
subplot(2,2,4)
y4 = sin(8*x);
plot(x,y4)
title('Subplot 4: sin(8x)')

如圖所示:

大小不同的子圖

創(chuàng)建一個包含三個子圖的圖窗。在圖窗的上半部分創(chuàng)建兩個子圖,并在圖窗的下半部分創(chuàng)建第三個子圖。在每個子圖上添加標題。

subplot(2,2,1);
x = linspace(-3.8,3.8);
y_cos = cos(x);
plot(x,y_cos);
title('Subplot 1: Cosine')
 
subplot(2,2,2);
y_poly = 1 - x.^2./2 + x.^4./24;
plot(x,y_poly,'g');
title('Subplot 2: Polynomial')
 
subplot(2,2,[3,4]);
plot(x,y_cos,'b',x,y_poly,'g');
title('Subplot 3 and 4: Both')

如圖所示:

將子圖替換為空坐標區(qū) 

創(chuàng)建一個包含四個隨機數(shù)據(jù)針狀圖的圖窗。然后將第二個子圖替換為空坐標區(qū)。 

for k = 1:4
    data = rand(1,10);
    subplot(2,2,k)
    stem(data)
end

如圖所示:

subplot(2,2,2,'replace')

如圖所示:

自定義位置上的子圖 

創(chuàng)建包含兩個未與網(wǎng)格位置對齊的子圖的圖窗。為每個子圖指定一個自定義位置。

pos1 = [0.1 0.3 0.3 0.3];
subplot('Position',pos1)
y = magic(4);
plot(y)
title('First Subplot')
 
pos2 = [0.5 0.15 0.4 0.7];
subplot('Position',pos2)
bar(y)
title('Second Subplot')

如圖所示:

創(chuàng)建包含極坐標區(qū)的子圖 

創(chuàng)建包含兩個極坐標區(qū)的圖窗。在上部子圖中創(chuàng)建極坐標線圖,在下部子圖中創(chuàng)建極坐標散點圖。

figure
ax1 = subplot(2,1,1,polaraxes);
theta = linspace(0,2*pi,50);
rho = sin(theta).*cos(theta);
polarplot(ax1,theta,rho)
 
ax2 = subplot(2,1,2,polaraxes);
polarscatter(ax2,theta,rho)

如圖所示:

創(chuàng)建后修改坐標區(qū)屬性

創(chuàng)建帶有兩個子圖的圖窗。將 Axes 對象賦給變量 ax1 和 ax2。將 Axes 對象指定為繪圖函數(shù)的輸入,以確保繪圖函數(shù)在特定的子圖中進行繪制。

ax1 = subplot(2,1,1);
Z = peaks;
plot(ax1,Z(1:20,:))
 
ax2 = subplot(2,1,2);  
plot(ax2,Z)

如圖所示:

通過設(shè)置 Axes 對象的屬性來修改坐標區(qū)。更改上部子圖的字體大小和下部子圖的線寬。某些繪圖函數(shù)可設(shè)置坐標區(qū)屬性。先執(zhí)行繪圖函數(shù),然后指定坐標區(qū)屬性以免覆蓋現(xiàn)有坐標區(qū)屬性的設(shè)置。使用圓點表示法設(shè)置屬性。 

使子圖成為當前坐標區(qū)

創(chuàng)建一個包含多個子圖的圖窗。將 Axes 對象存儲在向量 ax 中。然后使第二個子圖成為當前坐標區(qū)。創(chuàng)建一個線圖并更改第二個子圖的坐標軸范圍。默認情況下,圖形函數(shù)作用于當前坐標區(qū)。

for k = 1:4
    ax(k) = subplot(2,2,k);
end
subplot(ax(2))
x = linspace(1,50);
y = sin(x);
plot(x,y,'Color',[0.1, 0.5, 0.1])
title('Second Subplot')
axis([0 50 -1 1])

如圖所示:

將現(xiàn)有坐標區(qū)轉(zhuǎn)換為子圖 

創(chuàng)建一個線圖。然后轉(zhuǎn)換坐標區(qū),使其成為圖窗的下部子圖。subplot 函數(shù)使用原始坐標區(qū)所在的圖窗。

x = linspace(1,10);
y = sin(x);
plot(x,y)
title('Sine Plot')

如圖所示:

ax = gca;
subplot(2,1,2,ax)

如圖所示:

將不同圖窗中的坐標區(qū)轉(zhuǎn)換為子圖 

將位于不同圖窗中的坐標區(qū)合并到包含子圖的單個圖窗中。

在兩個不同的圖窗中創(chuàng)建兩個圖。將 Axes 對象賦給變量 ax1 和 ax2。將 Legend 對象賦給變量 lgd。

figure
x = linspace(0,10);
y1 = sin(x);
plot(x,y1)
title('Line Plot 1')

如圖所示:

ax1 = gca;
 
figure
y2 = 2*sin(x);
plot(x,y2)
title('Line Plot 2')
lgd = legend('2*Sin(x)');

如圖所示:

ax2 = gca;

使用 copyobj 創(chuàng)建兩個 Axes 對象的副本。將復(fù)制的坐標區(qū)的父級指定為新圖窗。由于圖例和顏色欄不會隨相關(guān)坐標區(qū)一起復(fù)制,因此請隨坐標區(qū)一起復(fù)制圖例。

fnew = figure;
ax1_copy = copyobj(ax1,fnew);
subplot(2,1,1,ax1_copy)
 
copies = copyobj([ax2,lgd],fnew);
ax2_copy = copies(1);
subplot(2,1,2,ax2_copy)

如圖所示:

 輸入?yún)?shù)說明

m - 網(wǎng)格行數(shù)

        網(wǎng)格行數(shù),指定為正整數(shù)。

n - 網(wǎng)格列數(shù)

        網(wǎng)格列數(shù),指定為正整數(shù)。

p - 新坐標區(qū)的網(wǎng)格位置

新坐標區(qū)的網(wǎng)格位置,指定為標量或正整數(shù)向量。

  • 如果 p 是正整數(shù)標量,則 subplot 在網(wǎng)格位置 p 處創(chuàng)建一個子圖。
  • 如果 p 是正整數(shù)向量,則 subplot 新建一個跨 p 中列出的網(wǎng)格位置的子圖。

示例:subplot(2,3,1) 在位置 1 處創(chuàng)建一個子圖。

示例: subplot(2,3,[2,5]) 創(chuàng)建跨位置 2 和 5 的子圖。

示例: subplot(2,3,[2,6]) 創(chuàng)建跨位置 2、3、5 和 6 的子圖。

pos - 新坐標區(qū)的自定義位置

        新坐標區(qū)的自定義位置,指定為 [left bottom width height] 形式的四元素向量。

  • left 和 bottom 元素指定子圖的左下角相對于圖窗的左下角的位置。
  • width 和 height 元素指定子圖維度。

        指定介于 0 和 1 之間的歸一化值(基于圖窗內(nèi)界)。

        注意:使用腳本創(chuàng)建子圖時,在發(fā)出 drawnow 命令或 MATLAB 返回到等待用戶命令之前,MATLAB 不會最終確定 Position 屬性值。在腳本刷新繪圖或退出之前,子圖的 Position 屬性值會受到變化的影響。

ax - 要設(shè)為當前坐標區(qū)或轉(zhuǎn)換為子圖的現(xiàn)有坐標區(qū)

        要設(shè)為當前坐標區(qū)或轉(zhuǎn)換為子圖的現(xiàn)有坐標區(qū),指定為 Axes 對象、PolarAxes 對象、GeographicAxes 對象或具有 PositionConstraint 屬性的圖形對象,如 HeatmapChart 對象。

        要在子圖位置創(chuàng)建空的極坐標區(qū)或地理坐標區(qū),請將 ax 指定為 polaraxes 或 geoaxes 函數(shù)。例如,subplot(2,1,2,polaraxes)。

提示

  • 要清除圖窗的內(nèi)容,請使用 clf。例如,您可以在創(chuàng)建新子圖布局之前清除圖窗中的現(xiàn)有子圖布局。
  • 要疊加坐標區(qū),請改用 axes 命令。subplot 函數(shù)會刪除與新坐標區(qū)重疊的現(xiàn)有坐標區(qū)。例如,subplot('Position',[.35 .35 .3 .3]) 會刪除所有底層坐標區(qū),但 axes('Position',[.35 .35 .3 .3]) 會將新坐標區(qū)置于圖窗的中部而不刪除底層坐標區(qū)。
  • subplot(111) 是一個例外,其行為與 subplot(1,1,1) 不同。出于向后兼容的原因,subplot(111) 是子圖的一種特殊情況,它不立即創(chuàng)建坐標區(qū),而是設(shè)置圖窗,以便接下來的圖形命令執(zhí)行 clf reset。接下來的圖形命令將刪除所有圖窗子級,并在默認位置創(chuàng)建新的坐標區(qū)。subplot(111) 不返回 Axes 對象,如果代碼指定了返回參數(shù),將會發(fā)生錯誤。

替代功能

        ?使用 tiledlayout 和 nexttile 函數(shù)創(chuàng)建可配置的繪圖平鋪。配置選項包括:?

  • 對繪圖之間和布局邊緣周圍間距的控制
  • 布局頂部共享標題的選項
  • 共享 x 軸和 y 軸標簽的選項
  • 用于控制分塊是固定大小還是可以調(diào)整的可變大小的選項

總結(jié)

到此這篇關(guān)于MATLAB中subplot函數(shù)使用的文章就介紹到這了,更多相關(guān)MATLAB subplot函數(shù)使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • c++實現(xiàn)二叉查找樹示例

    c++實現(xiàn)二叉查找樹示例

    這篇文章主要介紹了c++實現(xiàn)二叉查找樹示例,實現(xiàn)二叉查找樹的基本功能,需要的朋友可以參考下
    2014-02-02
  • C語言實現(xiàn)撲克牌計算24點

    C語言實現(xiàn)撲克牌計算24點

    這篇文章主要為大家詳細介紹了C語言如何實現(xiàn)撲克牌計算24點,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • CreateCompatibleDC()函數(shù)案例詳解

    CreateCompatibleDC()函數(shù)案例詳解

    這篇文章主要介紹了CreateCompatibleDC()函數(shù)案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C語言中字符串處理函數(shù)sscanf的用法

    C語言中字符串處理函數(shù)sscanf的用法

    一直對于一些日期字符串中數(shù)字的提取比較頭疼,現(xiàn)看到 sscanf 對于字符串中的內(nèi)容提取較方便,本文主要介紹了C語言中字符串處理函數(shù)sscanf的用法,具有一定參考價值,感興趣的可以了解一下
    2023-08-08
  • 詳解C語言中結(jié)構(gòu)體的使用

    詳解C語言中結(jié)構(gòu)體的使用

    結(jié)構(gòu)體是一些值的集合,這些值稱為成員變量,結(jié)構(gòu)體的每個成員可以是不同類型的變量。本文將通過示例為大家詳細講講C語言中結(jié)構(gòu)體的使用,需要的可以參考一下
    2022-07-07
  • C語言實現(xiàn)職工管理系統(tǒng)

    C語言實現(xiàn)職工管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)職工管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • C++深入探究類與對象之對象模型與this指針使用方法

    C++深入探究類與對象之對象模型與this指針使用方法

    C++對象模型中只有類的非static成員以及一個指向虛函數(shù)表的指針被配置于類對象內(nèi),其他都在類對象外,在 C++ 中,每一個對象都能通過 this 指針來訪問自己的地址。this 指針是所有成員函數(shù)的隱含參數(shù)。因此,在成員函數(shù)內(nèi)部,它可以用來指向調(diào)用對象
    2022-04-04
  • 深入理解Java事務(wù)的原理與應(yīng)用

    深入理解Java事務(wù)的原理與應(yīng)用

    下面小編就為大家?guī)硪黄钊肜斫釰ava事務(wù)的原理與應(yīng)用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • C語言實現(xiàn)簡單的推箱子游戲

    C語言實現(xiàn)簡單的推箱子游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡單的推箱子游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 深入了解C語言中的動態(tài)內(nèi)存分配

    深入了解C語言中的動態(tài)內(nèi)存分配

    這篇文章主要為大家詳細介紹了C語言中的動態(tài)內(nèi)存分配,文中的示例代碼講解詳細,對我們學習C語言有一定的幫助,需要的可以參考一下
    2022-06-06

最新評論