annotate scripts/plot/scatter.m @ 16950:b34202b24212

fplot.m: Overhaul function for Matlab compatibility and performance (bug #38961). * scripts/plot/fplot.m: Add ability to specify n,tol,fmt in any order and simultaneously. Return data rather than plotting it if asked. Use additional test on progress of algorithm to decide whether to quit. Add %!demo and %!tests.
author Rik <rik@octave.org>
date Thu, 11 Jul 2013 09:25:54 -0700
parents 64e7bb01fce2
children 1cbdd14711c5
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: 14011
diff changeset
1 ## Copyright (C) 2007-2012 David Bateman
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
2 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
3 ## This file is part of Octave.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
4 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
8 ## your option) any later version.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
9 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
13 ## General Public License for more details.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
14 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
17 ## <http://www.gnu.org/licenses/>.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
18
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
19 ## -*- texinfo -*-
10793
be55736a0783 Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents: 10701
diff changeset
20 ## @deftypefn {Function File} {} scatter (@var{x}, @var{y})
10699
da51afafca80 scatter.m: Add new calling forms of function to documentation.
Rik <octave@nomad.inbox5.com>
parents: 10697
diff changeset
21 ## @deftypefnx {Function File} {} scatter (@var{x}, @var{y}, @var{s})
da51afafca80 scatter.m: Add new calling forms of function to documentation.
Rik <octave@nomad.inbox5.com>
parents: 10697
diff changeset
22 ## @deftypefnx {Function File} {} scatter (@var{x}, @var{y}, @var{s}, @var{c})
da51afafca80 scatter.m: Add new calling forms of function to documentation.
Rik <octave@nomad.inbox5.com>
parents: 10697
diff changeset
23 ## @deftypefnx {Function File} {} scatter (@var{x}, @var{y}, @var{s}, @var{c}, @var{style})
da51afafca80 scatter.m: Add new calling forms of function to documentation.
Rik <octave@nomad.inbox5.com>
parents: 10697
diff changeset
24 ## @deftypefnx {Function File} {} scatter (@var{x}, @var{y}, @var{s}, @var{c}, @var{prop}, @var{val})
12124
cd82f5933c73 scatter: don't recognize 'filled' as a color
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
25 ## @deftypefnx {Function File} {} scatter (@dots{}, "filled")
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
26 ## @deftypefnx {Function File} {} scatter (@var{h}, @dots{})
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
27 ## @deftypefnx {Function File} {@var{h} =} scatter (@dots{})
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
28 ##
16814
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
29 ## Draw a scatter plot of the data. A marker is plotted at each point
9040
dbd0c77e575e Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents: 7245
diff changeset
30 ## defined by the points in the vectors @var{x} and @var{y}. The size of
16814
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
31 ## the markers used is determined by the @var{s}, which can be a scalar or
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
32 ## a vector of the same length as @var{x} and @var{y}. If @var{s} is not
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
33 ## given or is an empty matrix, then the default value of 8 points is used.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
34 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
35 ## The color of the markers is determined by @var{c}, which can be a string
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11563
diff changeset
36 ## defining a fixed color; a 3-element vector giving the red, green,and blue
11563
3c6e8aaa9555 Grammarcheck m-files before 3.4 release.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
37 ## components of the color; a vector of the same length as @var{x} that gives
16814
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
38 ## a scaled index into the current colormap; or an @var{n}-by-3 matrix defining
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
39 ## the colors of each of the markers individually.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
40 ##
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11563
diff changeset
41 ## The marker to use can be changed with the @var{style} argument, that is a
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11563
diff changeset
42 ## string defining a marker in the same manner as the @code{plot} command.
12124
cd82f5933c73 scatter: don't recognize 'filled' as a color
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
43 ## If the argument @code{"filled"} is given then the markers as filled. All
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
44 ## additional arguments are passed to the underlying patch command.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
45 ##
16814
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
46 ## The optional return value @var{h} is a graphics handle to the created patch
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
47 ## object.
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
48 ##
64e7bb01fce2 doc: Improve documentation for 2-D plot functions
Rik <rik@octave.org>
parents: 15975
diff changeset
49 ## Example:
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
50 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
51 ## @example
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
52 ## @group
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
53 ## x = randn (100, 1);
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
54 ## y = randn (100, 1);
14868
5d3a684236b0 maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents: 14848
diff changeset
55 ## scatter (x, y, [], sqrt (x.^2 + y.^2));
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
56 ## @end group
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
57 ## @end example
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
58 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
59 ## @seealso{plot, patch, scatter3}
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
60 ## @end deftypefn
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
61
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
62 function retval = scatter (varargin)
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
63
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
64 [h, varargin, nargin] = __plt_get_axis_arg__ ("scatter", varargin{:});
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
65
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
66 if (nargin < 2)
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
67 print_usage ();
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
68 else
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
69 oldh = gca ();
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
70 unwind_protect
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
71 axes (h);
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
72 newplot ();
7215
dd88d61d443f [project @ 2007-11-29 16:44:45 by jwe]
jwe
parents: 7208
diff changeset
73 tmp = __scatter__ (h, 2, "scatter", varargin{:});
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
74 unwind_protect_cleanup
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
75 axes (oldh);
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
76 end_unwind_protect
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
77 endif
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
78
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
79 if (nargout > 0)
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
80 retval = tmp;
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
81 endif
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
82
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
83 endfunction
7245
d65670971cbc [project @ 2007-12-04 03:03:54 by jwe]
jwe
parents: 7215
diff changeset
84
11363
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
85
7245
d65670971cbc [project @ 2007-12-04 03:03:54 by jwe]
jwe
parents: 7215
diff changeset
86 %!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
87 %! clf;
7245
d65670971cbc [project @ 2007-12-04 03:03:54 by jwe]
jwe
parents: 7215
diff changeset
88 %! x = randn (100, 1);
d65670971cbc [project @ 2007-12-04 03:03:54 by jwe]
jwe
parents: 7215
diff changeset
89 %! y = randn (100, 1);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
90 %! scatter (x, y, 'r');
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
91 %! title ('Scatter plot with red bubbles');
10697
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
92
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
93 %!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
94 %! clf;
10697
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
95 %! x = randn (100, 1);
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
96 %! y = randn (100, 1);
15973
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
97 %! c = x .* y;
15974
53a2fb7b2557 maint: Allow scatter demo to be run under Octave or Matlab for plot comparisons
Rik <octave@nomad.inbox5.com>
parents: 15973
diff changeset
98 %! scatter (x, y, 20, c, 'filled');
15973
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
99 %! title ('Scatter with colors');
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
100
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
101 %!demo
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
102 %! clf;
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
103 %! x = randn (100, 1);
d31a39a0ac77 Fix scatter() for filled markers using gnuplot.
John Hunt <huntj@gmx.us>
parents: 14138
diff changeset
104 %! y = randn (100, 1);
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 13988
diff changeset
105 %! scatter (x, y, [], sqrt (x.^2 + y.^2));
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
106 %! title ('Scatter plot with bubble color determined by distance from origin');
10697
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
107
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
108 %!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
109 %! clf;
11363
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
110 %! rand_10x1_data1 = [0.171577, 0.404796, 0.025469, 0.335309, 0.047814, 0.898480, 0.639599, 0.700247, 0.497798, 0.737940];
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
111 %! rand_10x1_data2 = [0.75495, 0.83991, 0.80850, 0.73603, 0.19360, 0.72573, 0.69371, 0.74388, 0.13837, 0.54143];
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
112 %! x = rand_10x1_data1;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
113 %! y = rand_10x1_data2;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
114 %! s = 10 - 10*log (x.^2 + y.^2);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
115 %! h = scatter (x, y, s, s, 's', 'filled');
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
116 %! title ({'Scatter plot with filled square markers', ...
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
117 %! 'size and color of markers determined by algorithm'});
10697
1215ab6f3491 Honor Matlab color settings for scatter().
Ben Abbott <bpabbott@mac.com>
parents: 9245
diff changeset
118
10701
657e63dcfd88 scatter.m: Properly set default value markersize and marker type.
Ben Abbott <bpabbott@mac.com>
parents: 10699
diff changeset
119 %!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
120 %! clf;
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11563
diff changeset
121 %! rand_10x1_data3 = [0.42262, 0.51623, 0.65992, 0.14999, 0.68385, 0.55929, 0.52251, 0.92204, 0.19762, 0.93726];
11363
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
122 %! rand_10x1_data4 = [0.020207, 0.527193, 0.443472, 0.061683, 0.370277, 0.947349, 0.249591, 0.666304, 0.134247, 0.920356];
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
123 %! x = rand_10x1_data3;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
124 %! y = rand_10x1_data4;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
125 %! s = 10 - 10*log (x.^2 + y.^2);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
126 %! h = scatter (x, y, [], 'r', 's', 'filled');
10701
657e63dcfd88 scatter.m: Properly set default value markersize and marker type.
Ben Abbott <bpabbott@mac.com>
parents: 10699
diff changeset
127
657e63dcfd88 scatter.m: Properly set default value markersize and marker type.
Ben Abbott <bpabbott@mac.com>
parents: 10699
diff changeset
128 %!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
129 %! clf;
11363
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
130 %! rand_10x1_data5 = [0.777753, 0.093848, 0.183162, 0.399499, 0.337997, 0.686724, 0.073906, 0.651808, 0.869273, 0.137949];
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
131 %! rand_10x1_data6 = [0.37460, 0.25027, 0.19510, 0.51182, 0.54704, 0.56087, 0.24853, 0.75443, 0.42712, 0.44273];
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
132 %! x = rand_10x1_data5;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
133 %! y = rand_10x1_data6;
a0dfd7e8e3e2 Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
134 %! s = 10 - 10*log (x.^2 + y.^2);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
135 %! h = scatter (x, y, [], 'r', 's');
10701
657e63dcfd88 scatter.m: Properly set default value markersize and marker type.
Ben Abbott <bpabbott@mac.com>
parents: 10699
diff changeset
136
13988
7ab497513c1a Fix colour properties in scatter (bug #34936)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 12124
diff changeset
137 %!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
138 %! clf;
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
139 %! k = 1;
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
140 %! for m = [1, 3]
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
141 %! for n = [101, 50, 1]
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
142 %! x = rand (n, 1);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
143 %! y = rand (n, 1);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
144 %! if (m > 1)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
145 %! str = 'Three Colors';
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
146 %! idx = ceil (rand (n, 1) * 3);
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
147 %! colors = eye (3);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
148 %! colors = colors(idx, :);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
149 %! else
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
150 %! str = 'Random Colors';
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
151 %! colors = rand (n, m);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
152 %! end
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
153 %! if (n == 1)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
154 %! str = sprintf ('%s: 1 point', str);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
155 %! elseif (n < 100)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
156 %! str = sprintf ('%s: < 100 points', str);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
157 %! else
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
158 %! str = sprintf ('%s: > 100 points', str);
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
159 %! end
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
160 %! subplot (2,3,k);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
161 %! k = k + 1;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
162 %! scatter (x, y, 15, colors, 'filled');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
163 %! axis ([0 1 0 1]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
164 %! title (str);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
165 %! end
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
166 %! end
14001
5f0bb45e615c doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents: 13988
diff changeset
167
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
168 %!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
169 %! clf;
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
170 %! k = 1;
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
171 %! for m = [1, 3]
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
172 %! for n = [101, 50, 1]
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
173 %! x = rand (n, 1);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
174 %! y = rand (n, 1);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
175 %! if (m > 1)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
176 %! str = 'Three Colors';
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
177 %! idx = ceil (rand (n, 1) * 3);
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
178 %! colors = eye (3);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
179 %! colors = colors(idx, :);
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
180 %! else
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
181 %! str = 'Random Colors';
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
182 %! colors = rand (n, m);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
183 %! end
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
184 %! if (n == 1)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
185 %! str = sprintf ('%s: 1 point', str);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
186 %! elseif (n < 100)
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
187 %! str = sprintf ('%s: < 100 points', str);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
188 %! else
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
189 %! str = sprintf ('%s: > 100 points', str);
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
190 %! end
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
191 %! subplot (2,3,k);
14011
431c6b00653d scatter.m: Bug fix (34936).
Ben Abbott <bpabbott@mac.com>
parents: 14001
diff changeset
192 %! k = k + 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
193 %! scatter (x, y, 15, colors);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
194 %! axis ([0 1 0 1]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
195 %! title (str);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
196 %! end
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
197 %! end
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
198