annotate scripts/plot/quiver.m @ 14237:11949c9795a0

Revamp %!demos in m-files to use Octave coding conventions on spacing, etc. Add clf() to all demos using plot features to get reproducibility. Use 64 as input to all colormaps (jet (64)) to get reproducibility. * bicubic.m, cell2mat.m, celldisp.m, cplxpair.m, interp1.m, interp2.m, interpft.m, interpn.m, profile.m, profshow.m, convhull.m, delaunay.m, griddata.m, inpolygon.m, voronoi.m, autumn.m, bone.m, contrast.m, cool.m, copper.m, flag.m, gmap40.m, gray.m, hot.m, hsv.m, image.m, imshow.m, jet.m, ocean.m, pink.m, prism.m, rainbow.m, spring.m, summer.m, white.m, winter.m, condest.m, onenormest.m, axis.m, clabel.m, colorbar.m, comet.m, comet3.m, compass.m, contour.m, contour3.m, contourf.m, cylinder.m, daspect.m, ellipsoid.m, errorbar.m, ezcontour.m, ezcontourf.m, ezmesh.m, ezmeshc.m, ezplot.m, ezplot3.m, ezpolar.m, ezsurf.m, ezsurfc.m, feather.m, fill.m, fplot.m, grid.m, hold.m, isosurface.m, legend.m, loglog.m, loglogerr.m, pareto.m, patch.m, pbaspect.m, pcolor.m, pie.m, pie3.m, plot3.m, plotmatrix.m, plotyy.m, polar.m, quiver.m, quiver3.m, rectangle.m, refreshdata.m, ribbon.m, rose.m, scatter.m, scatter3.m, semilogx.m, semilogxerr.m, semilogy.m, semilogyerr.m, shading.m, slice.m, sombrero.m, stairs.m, stem.m, stem3.m, subplot.m, surf.m, surfc.m, surfl.m, surfnorm.m, text.m, title.m, trimesh.m, triplot.m, trisurf.m, uigetdir.m, uigetfile.m, uimenu.m, uiputfile.m, waitbar.m, xlim.m, ylim.m, zlim.m, mkpp.m, pchip.m, polyaffine.m, spline.m, bicgstab.m, cgs.m, gplot.m, pcg.m, pcr.m, treeplot.m, strtok.m, demo.m, example.m, rundemos.m, speed.m, test.m, calendar.m, datestr.m, datetick.m, weekday.m: Revamp %!demos to use Octave coding conventions on spacing, etc.
author Rik <octave@nomad.inbox5.com>
date Fri, 20 Jan 2012 12:59:53 -0800
parents 72c96de7a403
children 4506eade9f04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14138
72c96de7a403 maint: update copyright notices for 2012
John W. Eaton <jwe@octave.org>
parents: 14092
diff changeset
1 ## Copyright (C) 2007-2012 David Bateman
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
2 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
3 ## This file is part of Octave.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
4 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
8 ## your option) any later version.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
9 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
13 ## General Public License for more details.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
14 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
17 ## <http://www.gnu.org/licenses/>.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
18
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
19 ## -*- texinfo -*-
10793
be55736a0783 Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents: 9354
diff changeset
20 ## @deftypefn {Function File} {} quiver (@var{u}, @var{v})
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
21 ## @deftypefnx {Function File} {} quiver (@var{x}, @var{y}, @var{u}, @var{v})
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
22 ## @deftypefnx {Function File} {} quiver (@dots{}, @var{s})
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
23 ## @deftypefnx {Function File} {} quiver (@dots{}, @var{style})
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
24 ## @deftypefnx {Function File} {} quiver (@dots{}, 'filled')
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
25 ## @deftypefnx {Function File} {} quiver (@var{h}, @dots{})
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
26 ## @deftypefnx {Function File} {@var{h} =} quiver (@dots{})
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
27 ##
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
28 ## Plot the @code{(@var{u}, @var{v})} components of a vector field in
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
29 ## an @code{(@var{x}, @var{y})} meshgrid. If the grid is uniform, you can
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
30 ## specify @var{x} and @var{y} as vectors.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
31 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
32 ## If @var{x} and @var{y} are undefined they are assumed to be
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
33 ## @code{(1:@var{m}, 1:@var{n})} where @code{[@var{m}, @var{n}] =
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
34 ## size(@var{u})}.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
35 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
36 ## The variable @var{s} is a scalar defining a scaling factor to use for
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
37 ## the arrows of the field relative to the mesh spacing. A value of 0
9040
dbd0c77e575e Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
38 ## disables all scaling. The default value is 1.
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
39 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
40 ## The style to use for the plot can be defined with a line style @var{style}
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
41 ## in a similar manner to the line styles used with the @code{plot} command.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
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
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
44 ## markers as filled.
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
45 ##
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
46 ## The optional return value @var{h} is a graphics handle to a quiver object.
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
47 ## A quiver object regroups the components of the quiver plot (body, arrow,
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
48 ## and marker), and allows them to be changed together.
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
49 ##
7121
c0d9ac299176 [project @ 2007-11-07 21:32:57 by jwe]
jwe
parents: 7120
diff changeset
50 ## @example
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
51 ## @group
7121
c0d9ac299176 [project @ 2007-11-07 21:32:57 by jwe]
jwe
parents: 7120
diff changeset
52 ## [x, y] = meshgrid (1:2:20);
8056
9a6f4713f765 Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents: 7215
diff changeset
53 ## h = quiver (x, y, sin (2*pi*x/10), sin (2*pi*y/10));
9a6f4713f765 Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents: 7215
diff changeset
54 ## set (h, "maxheadsize", 0.33);
7121
c0d9ac299176 [project @ 2007-11-07 21:32:57 by jwe]
jwe
parents: 7120
diff changeset
55 ## @end group
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
56 ## @end example
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
57 ##
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
58 ## @seealso{plot}
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
59 ## @end deftypefn
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
60
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
61 function retval = quiver (varargin)
7121
c0d9ac299176 [project @ 2007-11-07 21:32:57 by jwe]
jwe
parents: 7120
diff changeset
62
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
63 [h, varargin, nargin] = __plt_get_axis_arg__ ("quiver", varargin{:});
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
64
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
65 if (nargin < 2)
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
66 print_usage ();
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
67 else
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
68 oldh = gca ();
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
69 unwind_protect
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
70 axes (h);
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
71 newplot ();
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
72 tmp = __quiver__ (h, 0, varargin{:});
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
73 unwind_protect_cleanup
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
74 axes (oldh);
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
75 end_unwind_protect
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
76 endif
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
77
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
78 if (nargout > 0)
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
79 retval = tmp;
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
80 endif
7121
c0d9ac299176 [project @ 2007-11-07 21:32:57 by jwe]
jwe
parents: 7120
diff changeset
81
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
82 endfunction
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
83
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
84
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
85 %!demo
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
86 %! clf;
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
87 %! [x,y] = meshgrid (1:2:20);
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
88 %! h = quiver (x,y, sin (2*pi*x/10), sin (2*pi*y/10));
8056
9a6f4713f765 Add area, bar, quiver and stair series graphics objects. Document them
David Bateman <dbateman@free.fr>
parents: 7215
diff changeset
89 %! set (h, "maxheadsize", 0.33);
7120
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
90
a2174fb073d4 [project @ 2007-11-07 21:26:43 by jwe]
jwe
parents:
diff changeset
91 %!demo
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
92 %! clf;
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
93 %! axis ("equal");
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
94 %! x = linspace (0, 3, 80);
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
95 %! y = sin (2*pi*x);
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
96 %! theta = 2*pi*x + pi/2;
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
97 %! quiver (x, y, sin (theta)/10, cos (theta)/10);
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
98 %! hold on; plot (x,y,"r"); hold off;
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
99