Hello,
If I have a set of data such as
X = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.85];
rA = [-.0053, -.0052, -.0050, -.0045, -.0040, -.0033, -.0025, -.0018, -.00125, -.0010];
plot(X,-1./rA)
and I want to know the area under the curve generated in the graph, how would I do that? There is no function involved here, this is just raw data, so I know I can't use quad or any of those integral functions.
Thanks

3 commentaires

Ashok
Ashok le 9 Juil 2016
% Find the number of pixels of the connected component
Bin_image - logical binary image CC = bwconncomp(Bin_image); CC numPixels = cellfun(@numel,CC.PixelIdxList); disp(numPixels);
% Find the number of pixels of the connected component
[Label,~]=bwlabel((Bin_image),8); [Label,~]=bwlabel(Bin_log_4mult,8); num=1; [row, ~] = find(Label==num); Obj_area=numel(row); display(Obj_area);
Samarth Patil
Samarth Patil le 7 Juin 2018
how to find the area in an interval for such a plot?
Krishnendu Mukherjee
Krishnendu Mukherjee le 12 Sep 2018
Thanks a lot. It helped a lot.

Connectez-vous pour commenter.

 Réponse acceptée

Star Strider
Star Strider le 9 Sep 2014
Modifié(e) : Star Strider le 9 Sep 2014

20 votes

Use trapz. It’s designed to do exactly what you want.
Int = trapz(X, -1./rA)
produces:
Int =
306.7455

5 commentaires

Rick
Rick le 9 Sep 2014
Modifié(e) : Rick le 9 Sep 2014
now how do I know if I should do trapz(X,-1./rA) or trapz(-1./rA,X)?? Which would give the area under the curve for the plot(X,-1./rA)??
The documentation is quite unclear to me, it says
Z = trapz(X,Y) computes the integral of Y with respect to X using
the trapezoidal method. X and Y must be vectors of the same
length, or X must be a column vector and Y an array whose first
non-singleton dimension is length(X). trapz operates along this
dimension.
if X is my x-axis and -1./rA is my y-axis, does that mean I should do trapz(X,-1./rA)??
‘if X is my x-axis and -1./rA is my y-axis, does that mean I should do trapz(X,-1./rA)??’
Yes. Actually, X is your independent variable and (-1./rA) is your dependent variable.
Use:
Int = trapz(X, -1./rA)
to produce:
Int =
306.7455
Krishnendu Mukherjee
Krishnendu Mukherjee le 12 Sep 2018
Thanks a lot :)
Saurabh Parmar
Saurabh Parmar le 25 Mai 2020
Thank You So Much! That helped a lot.
Star Strider
Star Strider le 16 Jan 2021
Everyone — My pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Ashok
Ashok le 9 Juil 2016

0 votes

% Find the number of pixels of the connected component
Bin_image - logical binary image CC = bwconncomp(Bin_image); CC numPixels = cellfun(@numel,CC.PixelIdxList); disp(numPixels);
% Find the number of pixels of the connected component
[Label,~]=bwlabel((Bin_image),8); [Label,~]=bwlabel(Bin_log_4mult,8); num=1; [row, ~] = find(Label==num); Obj_area=numel(row); display(Obj_area);

Catégories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by