contour2di

contour2di — compute level curves of a surface on a 2D plot

Calling sequence

[xc,yc]=contour2di(x,y,z,nz)  

Parameters

x,y : two real row vectors of size n1 and n2: the grid.
z : real matrix of size (n1,n2), the values of the function.
nz

: the level values or the number of levels.

-

If nz is an integer, its value gives the number of level curves equally spaced from zmin to zmax as follows:



 z= zmin + (1:nz)*(zmax-zmin)/(nz+1)
   
                

Note that the zmin and zmax levels are not drawn (generically they are reduced to points) but they can be added with



 [im,jm] = find(z == zmin);     // or zmax 
 plot2d(x(im)',y(jm)',-9,"000")
   
                

- If nz is a vector, nz(i) gives the value of the ith level curve.

xc,yc : vectors of identical sizes containing the contours definitions. See below for details.

Description

contour2di computes level curves of a surface z=f(x,y) on a 2D plot. The values of f(x,y) are given by the matrix z at the grid points defined by x and y.

xc(1) contains the level associated with first contour path, yc(1) contains the number N1 of points defining this contour path and (xc(1+(1:N1)), yc(1+(1:N1)) ) contain the coordinates of the paths points. The second path begin at xc(2+N1) and yc(2+N1) and so on.

Examples



[xc,yc]=contour2di(1:10,1:10,rand(10,10),5);
k=1;n=yc(k);c=1;
while k+yc(k)<size(xc,'*')
  n=yc(k);
  plot2d(xc(k+(1:n)),yc(k+(1:n)),c)
  c=c+1;
  k=k+n+1;
end

 
  

See also

contour, fcontour, fcontour2d, contour2d, plot2d, xset

Author

J.Ph.C.