Mercurial > hg > octave-lyh
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 |
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 | 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 -*- | |
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 | 26 ## @deftypefnx {Function File} {} scatter (@var{h}, @dots{}) |
27 ## @deftypefnx {Function File} {@var{h} =} scatter (@dots{}) | |
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 | 33 ## given or is an empty matrix, then the default value of 8 points is used. |
34 ## | |
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 | 39 ## the colors of each of the markers individually. |
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 | 44 ## additional arguments are passed to the underlying patch command. |
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 | 50 ## |
51 ## @example | |
52 ## @group | |
53 ## x = randn (100, 1); | |
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 | 56 ## @end group |
57 ## @end example | |
58 ## | |
59 ## @seealso{plot, patch, scatter3} | |
60 ## @end deftypefn | |
61 | |
62 function retval = scatter (varargin) | |
63 | |
7215 | 64 [h, varargin, nargin] = __plt_get_axis_arg__ ("scatter", varargin{:}); |
65 | |
7189 | 66 if (nargin < 2) |
67 print_usage (); | |
7215 | 68 else |
7189 | 69 oldh = gca (); |
70 unwind_protect | |
71 axes (h); | |
72 newplot (); | |
7215 | 73 tmp = __scatter__ (h, 2, "scatter", varargin{:}); |
7189 | 74 unwind_protect_cleanup |
75 axes (oldh); | |
76 end_unwind_protect | |
77 endif | |
78 | |
79 if (nargout > 0) | |
80 retval = tmp; | |
81 endif | |
82 | |
83 endfunction | |
7245 | 84 |
11363
a0dfd7e8e3e2
Assign data used in demo plots for reproducibility between runs
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
85 |
7245 | 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 | 88 %! x = randn (100, 1); |
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 |