Mercurial > hg > octave-lyh
annotate scripts/plot/quiver3.m @ 9051:1bf0ce0930be
Grammar check TexInfo in all .m files
Cleanup documentation sources to follow a few consistent rules.
Spellcheck was NOT done. (but will be in another changeset)
author | Rik <rdrider0-list@yahoo.com> |
---|---|
date | Fri, 27 Mar 2009 22:31:03 -0700 |
parents | dbd0c77e575e |
children | be55736a0783 |
rev | line source |
---|---|
8920 | 1 ## Copyright (C) 2007, 2008, 2009 David Bateman |
7189 | 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} {} quiver3 (@var{u}, @var{v}, @var{w}) | |
21 ## @deftypefnx {Function File} {} quiver3 (@var{x}, @var{y}, @var{z}, @var{u}, @var{v}, @var{w}) | |
22 ## @deftypefnx {Function File} {} quiver3 (@dots{}, @var{s}) | |
23 ## @deftypefnx {Function File} {} quiver3 (@dots{}, @var{style}) | |
24 ## @deftypefnx {Function File} {} quiver3 (@dots{}, 'filled') | |
25 ## @deftypefnx {Function File} {} quiver3 (@var{h}, @dots{}) | |
26 ## @deftypefnx {Function File} {@var{h} =} quiver3 (@dots{}) | |
27 ## | |
28 ## Plot the @code{(@var{u}, @var{v}, @var{w})} components of a vector field in | |
9040
dbd0c77e575e
Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
29 ## an @code{(@var{x}, @var{y}), @var{z}} meshgrid. If the grid is uniform, you |
7189 | 30 ## can specify @var{x}, @var{y} @var{z} as vectors. |
31 ## | |
32 ## If @var{x}, @var{y} and @var{z} are undefined they are assumed to be | |
33 ## @code{(1:@var{m}, 1:@var{n}, 1:@var{p})} where @code{[@var{m}, @var{n}] = | |
34 ## size(@var{u})} and @code{@var{p} = max (size (@var{w}))}. | |
35 ## | |
36 ## The variable @var{s} is a scalar defining a scaling factor to use for | |
9040
dbd0c77e575e
Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
37 ## the arrows of the field relative to the mesh spacing. A value of 0 |
dbd0c77e575e
Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
38 ## disables all scaling. The default value is 1. |
7189 | 39 ## |
40 ## The style to use for the plot can be defined with a line style @var{style} | |
41 ## in a similar manner to the line styles used with the @code{plot} command. | |
42 ## If a marker is specified then markers at the grid points of the vectors are | |
9040
dbd0c77e575e
Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
43 ## printed rather than arrows. If the argument 'filled' is given then the |
7189 | 44 ## markers as filled. |
45 ## | |
8056
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
46 ## The optional return value @var{h} provides a quiver group that |
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
47 ## regroups the components of the quiver plot (body, arrow and marker), |
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
48 ## and allows them to be changed together |
7189 | 49 ## |
50 ## @example | |
51 ## @group | |
52 ## [x, y, z] = peaks (25); | |
53 ## surf (x, y, z); | |
54 ## hold on; | |
55 ## [u, v, w] = surfnorm (x, y, z / 10); | |
8056
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
56 ## h = quiver3 (x, y, z, u, v, w); |
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
57 ## set (h, "maxheadsize", 0.33); |
7189 | 58 ## @end group |
59 ## @end example | |
60 ## | |
61 ## @seealso{plot} | |
62 ## @end deftypefn | |
63 | |
64 function retval = quiver3 (varargin) | |
65 | |
7215 | 66 [h, varargin, nargin] = __plt_get_axis_arg__ ("quiver3", varargin{:}); |
67 | |
7189 | 68 if (nargin < 2) |
69 print_usage (); | |
7215 | 70 else |
7189 | 71 oldh = gca (); |
72 unwind_protect | |
73 axes (h); | |
74 newplot (); | |
7215 | 75 tmp = __quiver__ (h, 1, varargin{:}); |
7189 | 76 unwind_protect_cleanup |
77 axes (oldh); | |
78 end_unwind_protect | |
79 endif | |
80 | |
81 if (nargout > 0) | |
82 retval = tmp; | |
83 endif | |
84 | |
85 endfunction | |
86 | |
87 %!demo | |
8889
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
88 %! clf |
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
89 %! colormap (jet (64)) |
7189 | 90 %! [x,y]=meshgrid (-1:0.1:1); |
91 %! z=sin(2*pi*sqrt(x.^2+y.^2)); | |
92 %! theta=2*pi*sqrt(x.^2+y.^2)+pi/2; | |
93 %! quiver3(x,y,z,sin(theta),cos(theta),ones(size(z))); | |
94 %! hold on; | |
95 %! mesh(x,y,z); | |
96 %! hold off; | |
7245 | 97 |
98 %!demo | |
8889
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
99 %! clf |
7245 | 100 %! [x, y, z] = peaks (25); |
101 %! surf (x, y, z); | |
102 %! hold on; | |
103 %! [u, v, w] = surfnorm (x, y, z / 10); | |
8056
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
104 %! h = quiver3 (x, y, z, u, v, w); |
9a6f4713f765
Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents:
7245
diff
changeset
|
105 %! set (h, "maxheadsize", 0.33); |
8253
873ea2c72f16
quiver3.m: turn hold off after demo
John W. Eaton <jwe@octave.org>
parents:
8056
diff
changeset
|
106 %! hold off; |
8889
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
107 |
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
108 %!demo |
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
109 %! shading interp |
665b264b6a50
Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents:
8253
diff
changeset
|
110 |