Area calculation within contour

Sirs, I have the following plot
[C,h] = contour(X,Y,Z,[s,s])
Where s is a variable that I change. This plot the image:
I am interested to calculate the area inside this contour (so I can compare different values of s)
I have attempted to use some previous solutions I have found on this site, to no joy.
I have attached data for X,Y,Z
s can take any value <Z max
kind regards. W

4 Comments

Please mention these "some previous solutions" and explain "to no joy" with details. It would be a waste of time to suggest these methods again and maybe you had only a typo in your method to call these solutions.
Did you try the polyarea() function? I'm going to assume you did and for some reason you believe it's giving you the wrong area. So, I don't know, polyarea() is what I would have tried and if you say it doesn't give the right answer then I have nothing else to suggest (unless you want to convert the data to a digital image).
Someone could if you had given us the data to create your plot. Come on, make it easy for people to help you not hard.
You should give a small sample data set that's more or less representative of your actual problem. That way interested people can test out their suggestions ahead of time to make sure they work.

Sign in to comment.

 Accepted Answer

William White
William White on 7 Feb 2018
I think I have a rather clumsy numeric answer.
I count the number of entries in Z that are equal or larger than s.
Then multiply by the area of a unit "pixel" (because I know the dimensions of X,Y I know how many "pixels" are in X,Y and so the area of that pixel).
Thanks for everybody's help W

More Answers (0)

Community Treasure Hunt

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

Start Hunting!