Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - English


compute level curves of a surface on a 2D plot


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


x, y

two real row vectors of size n1 and n2: the grid.


a real matrix of size (n1,n2), the values of the function.


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
If nz is a vector

nz(i) gives the value of the i-th level curve.

xc, yc

vectors of identical sizes containing the contours definitions. See below for details.


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.


while k+yc(k)<size(xc,'*')

See also

  • contour — level curves on a 3D surface
  • contour2d — level curves of a surface on a 2D plot
  • contour2dm — compute level curves of a surface defined with a mesh
  • plot2d — 2D plot
Report an issue
<< contour2d 2d_plot contour2dm >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Mar 27 11:52:45 GMT 2023