annotate scripts/sparse/gplot.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 f3d52523cde1
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: 13087
diff changeset
1 ## Copyright (C) 2005-2012 Ivana Varekova
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
2 ##
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
3 ## This file is part of Octave.
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
4 ##
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
6 ## under the terms of the GNU General Public License as published by
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
8 ## your option) any later version.
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
9 ##
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
13 ## General Public License for more details.
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
14 ##
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6746
diff changeset
17 ## <http://www.gnu.org/licenses/>.
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
18
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
19 ## -*- texinfo -*-
11471
994e2a93a8e2 Use uppercase 'A' to refer to matrix inputs in m-files.
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
20 ## @deftypefn {Function File} {} gplot (@var{A}, @var{xy})
994e2a93a8e2 Use uppercase 'A' to refer to matrix inputs in m-files.
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
21 ## @deftypefnx {Function File} {} gplot (@var{A}, @var{xy}, @var{line_style})
994e2a93a8e2 Use uppercase 'A' to refer to matrix inputs in m-files.
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
22 ## @deftypefnx {Function File} {[@var{x}, @var{y}] =} gplot (@var{A}, @var{xy})
5577
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
23 ## Plot a graph defined by @var{A} and @var{xy} in the graph theory
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
24 ## sense. @var{A} is the adjacency matrix of the array to be plotted
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
25 ## and @var{xy} is an @var{n}-by-2 matrix containing the coordinates of
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
26 ## the nodes of the graph.
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
27 ##
5577
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
28 ## The optional parameter @var{line_style} defines the output style for
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
29 ## the plot. Called with no output arguments the graph is plotted
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
30 ## directly. Otherwise, return the coordinates of the plot in @var{x}
6ada1581e8b4 [project @ 2005-12-13 19:20:14 by jwe]
jwe
parents: 5576
diff changeset
31 ## and @var{y}.
5642
2618a0750ae6 [project @ 2006-03-06 21:26:48 by jwe]
jwe
parents: 5577
diff changeset
32 ## @seealso{treeplot, etreeplot, spy}
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
33 ## @end deftypefn
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
34
11471
994e2a93a8e2 Use uppercase 'A' to refer to matrix inputs in m-files.
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
35 function [x, y] = gplot (A, xy, line_style)
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
36
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
37 if (nargin < 2 || nargin > 3 || nargout > 2)
6046
34f96dd5441b [project @ 2006-10-10 16:10:25 by jwe]
jwe
parents: 5642
diff changeset
38 print_usage ();
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
39 endif
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
40
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
41 if (nargin == 2)
6746
a8105a726e68 [project @ 2007-06-19 08:18:34 by dbateman]
dbateman
parents: 6273
diff changeset
42 line_style = "-";
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
43 endif
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
44
11471
994e2a93a8e2 Use uppercase 'A' to refer to matrix inputs in m-files.
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
45 [i, j] = find (A);
10547
af55e4a499e4 Fix parsing error when NaN used inside of matrix declaration
Rik <code@nomad.inbox5.com>
parents: 10540
diff changeset
46 xcoord = [xy(i,1), xy(j,1), NaN(length(i),1) ]'(:);
af55e4a499e4 Fix parsing error when NaN used inside of matrix declaration
Rik <code@nomad.inbox5.com>
parents: 10540
diff changeset
47 ycoord = [xy(i,2), xy(j,2), NaN(length(i),1) ]'(:);
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
48
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
49 if (nargout == 0)
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
50 plot (xcoord, ycoord, line_style);
5576
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
51 else
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
52 x = xcoord;
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
53 y = ycoord;
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
54 endif
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
55
7e008607a86e [project @ 2005-12-13 19:05:54 by jwe]
jwe
parents:
diff changeset
56 endfunction
13087
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
57
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
58
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
59 %!demo
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
60 %! ## Binary Tree Representation
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
61 %! A = [0 1 0 0 0 0 0
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
62 %! 1 0 1 1 0 0 0
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
63 %! 0 1 0 0 0 0 0
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
64 %! 0 1 0 0 1 0 0
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
65 %! 0 0 0 1 0 1 1
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
66 %! 0 0 0 0 1 0 0
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
67 %! 0 0 0 0 1 0 0];
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
68 %!
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
69 %! xy = [1 , 0
13087
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
70 %! 1.5, 1
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
71 %! 2 , 0
13087
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
72 %! 2.5, 2
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
73 %! 3.5, 1
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
74 %! 3 , 0
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
75 %! 4 , 0];
13087
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
76 %!
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
77 %! clf;
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
78 %! gplot (A, xy, "o-");
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
79 %! set (get (gca, ("children")), "markersize", 12);
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
80 %! title ("gplot() of Binary Tree Adjacency matrix");
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
81
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
82 %% Mark graphical function as tested by demo block
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
83 %!assert (1);
71ce008332e2 codesprint: Add demo block to gplot.m
Rik <octave@nomad.inbox5.com>
parents: 11587
diff changeset
84