]> Creatis software - CreaPhase.git/blob - octave_packages/m/plot/ezcontour.m
update packages
[CreaPhase.git] / octave_packages / m / plot / ezcontour.m
1 ## Copyright (C) 2007-2012 David Bateman
2 ##
3 ## This file is part of Octave.
4 ##
5 ## Octave is free software; you can redistribute it and/or modify it
6 ## under the terms of the GNU General Public License as published by
7 ## the Free Software Foundation; either version 3 of the License, or (at
8 ## your option) any later version.
9 ##
10 ## Octave is distributed in the hope that it will be useful, but
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 ## General Public License for more details.
14 ##
15 ## You should have received a copy of the GNU General Public License
16 ## along with Octave; see the file COPYING.  If not, see
17 ## <http://www.gnu.org/licenses/>.
18
19 ## -*- texinfo -*-
20 ## @deftypefn  {Function File} {} ezcontour (@var{f})
21 ## @deftypefnx {Function File} {} ezcontour (@dots{}, @var{dom})
22 ## @deftypefnx {Function File} {} ezcontour (@dots{}, @var{n})
23 ## @deftypefnx {Function File} {} ezcontour (@var{h}, @dots{})
24 ## @deftypefnx {Function File} {@var{h} =} ezcontour (@dots{})
25 ##
26 ## Plot the contour lines of a function.  @var{f} is a string, inline function
27 ## or function handle with two arguments defining the function.  By default the
28 ## plot is over the domain @code{-2*pi < @var{x} < 2*pi} and @code{-2*pi <
29 ## @var{y} < 2*pi} with 60 points in each dimension.
30 ##
31 ## If @var{dom} is a two element vector, it represents the minimum and maximum
32 ## value of both @var{x} and @var{y}.  If @var{dom} is a four element vector,
33 ## then the minimum and maximum value of @var{x} and @var{y} are specify
34 ## separately.
35 ##
36 ## @var{n} is a scalar defining the number of points to use in each dimension.
37 ##
38 ## The optional return value @var{h} is a graphics handle to the created plot.
39 ##
40 ## @example
41 ## @group
42 ## f = @@(x,y) sqrt (abs (x .* y)) ./ (1 + x.^2 + y.^2);
43 ## ezcontour (f, [-3, 3]);
44 ## @end group
45 ## @end example
46 ##
47 ## @seealso{ezplot, ezcontourf, ezsurfc, ezmeshc}
48 ## @end deftypefn
49
50 function retval = ezcontour (varargin)
51
52   [h, needusage] = __ezplot__ ("contour", varargin{:});
53
54   if (needusage)
55     print_usage ();
56   endif
57
58   if (nargout > 0)
59     retval = h;
60   endif
61 endfunction
62
63
64 %!demo
65 %! clf
66 %! f = @(x,y) sqrt(abs(x .* y)) ./ (1 + x.^2 + y.^2);
67 %! ezcontour (f, [-3, 3]);
68