Contour2Area

Gives the area of polygons from the matlab function C=contour(x,y,z) and their centroids.
2.1K Downloads
Updated 26 Jan 2010

View License

Gives the area of the polygons that are created from the matlab function C=contour(x,y,z,...); It also gives the centroids (centre of mass) of each polygon. The structure of C delivered by contour is a bit complicated to work with itself, why I developed this matlab function.

Syntax: [Area,Centroid,IN]=Contour2Area(C)
Takes the contour argument C from matlabs function contourc
as produced by C=contour(x,y,z,...) and convert the contours
to closed polygons from where the areas are calculated.
In addition the centroids (centre of mass) Cxy are calculated
and a matrix IN determining the parent/child relationship
between the contours (if polygon i is inside j then IN_ij=1, else=0).
For obscure contours NaN would be retrived, but are excluded in output.
%
Created By: Per Sundqvist 2010-01-26, ABB/CRC, Västerås/Sweden.
%
%--- Example ---
[X,Y,Z] = PEAKS(50);
figure(1), clf;
%C=contourf(X,Y,Z,0.37+[0 0]);
C=contourf(X,Y,Z,5);
[Area,Centroid,IN]=Contour2Area(C);
xc=Centroid(1,:);yc=Centroid(2,:);
hold on;plot(xc,yc,'k*');
Area
IN

Cite As

Per Sundqvist (2024). Contour2Area (https://www.mathworks.com/matlabcentral/fileexchange/26480-contour2area), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2008b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.0.0.0