level curves of a surface on a 2D plot
contour2d(x, y, z, nz, [style, strf, leg, rect, nax]) contour2d(x, y, z, nz, <opt_args>)
- x, y
two real row vectors of size
n2: the grid.
real matrix of size
(n1,n2), the values of the function on the grid or a Scilab function which defines the surface
the level values or the number of levels.
nzis an integer
its value gives the number of level curves equally spaced from
z= zmin + (1:nz)*(zmax-zmin)/(nz+1)Note that the
zmaxlevels are not drawn (generically they are reduced to points) but they can be added with
nzis a vector
nz(i)gives the value of the
i-th level curve.
This represents a sequence of statements
key1=value1, key2=value2,... where
key2,... can be one of the following:
- style, strf, leg, rect, nax
see plot2d. The argument
stylegives the dash styles or colors which are to be used for level curves. It must have the same size as the number of levels.
contour2d draws 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
You can change the format of the floating point number printed on
the levels by using
string gives the format in C format syntax (for
switch back to default format and use
string=" " to
suppress printing. This last feature is useful in conjunction with
legends to display the level numbers
in a legend and not directly onto the level curves as usual (see
The optional arguments
nax can be
passed by a sequence of statements
,... where keys may be
nax. In this case, the order has no special meaning.
contour to draw levels curves on a 3D surface.
// now an example with level numbers drawn in a legend // Caution there are a number of tricks... x = linspace(0,4*%pi,80); z = cos(x')*cos(x); clf(); f=gcf(); xset("fpf"," ") // trick 1: this implies that the level numbers are not // drawn on the level curves f.color_map=jetcolormap(7); // trick 2: to be able to put the legend on the right without // interfering with the level curves use rect with a xmax // value large enough contour2d(x,x,z,-0.75:0.25:0.75,frameflag=3,rect=[0,0,5*%pi,4*%pi]) // trick 3: use legends (note that the more practical legend function // will not work as soon as one of the level is formed by 2 curves) legends(string(-0.75:0.25:0.75),1:7,"lr"); xtitle("Some level curves of the function cos(x)cos(y)")
|Report an issue|
|<< comet||2d_plot||contour2di >>|