簡體   English   中英

如何使用MATLAB計算曲線下的局部面積?

[英]How do I calculate the partial area under a curve with MATLAB?

我是Matlab的新手,並嘗試查找部分圖形而非整個圖形的曲線下面積(AUC)。 我有興趣計算2個地區的獨立AUC; x軸上的一個從-350到-100,另一個從-100到+150。 如何為圖形的這些部分(而不是整個X軸)計算AUC? 沒有足夠的聲譽來提供數字。 如果社區中有人可以提供matlab代碼。

數據集中的每對值對應於x,y坐標。 如果繪制,這些點將生成單獨的(x,y)曲線,其中x是從-750到+750的固定列。
y數據有N行,類似於

x = [-750:25:750];

y1 = [1.52,0.47,0.59,0.62,1.88,...];    
y2 = [1.5,0.79,0.74,1.46,0.6,...];  
y3 = [1.6,0.11,0.79,0.77,1.33,...];

yn = [0.061,0.0609,0.05948,0.0624,0.067,0.073347639,...];

...未提供完整的數據集。

我想針對(x,y)的每個組合(例如(x,y1),(x,y2))計算x軸上存在的-350至-100區域和-100至+150區域的AUC。

嘗試這樣的事情(使用trapz ):

startingIndex = find(x==-350);
endingIndex = find(x==-100);

desiredX = x(startingIndex:endingIndex);
desiredY = y1(startingIndex:endingIndex);
area = trapz(desiredX,desiredY);

如位於http://www.mathworks.com/matlabcentral/newsreader/view_thread/278102

基本上,它會找到x數組中端點的索引,然后從相應的截斷y向量計算曲線下的面積。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM