annotate scripts/image/spring.m @ 20724:0338dc274ec5

Rewrite colormap demos with rgbplot() to show both composite and profile. * scripts/image/autumn.m, scripts/image/bone.m, scripts/image/cool.m, scripts/image/copper.m, scripts/image/cubehelix.m, scripts/image/gray.m, scripts/image/hot.m, scripts/image/hsv.m, scripts/image/jet.m, scripts/image/ocean.m, scripts/image/pink.m, scripts/image/rainbow.m, scripts/image/spring.m, scripts/image/summer.m, scripts/image/viridis.m, scripts/image/white.m, scripts/image/winter.m: rewrite the demos to make use of rgbplot instead of manually creating the composite view. Also expand it to include the rgb profile of the colormap under the composite view to better understand the colormap. Expand the number of colours in the demo to 256 for smoother curves. * scripts/image/flag.m, scripts/image/lines.m, scripts/image/prism.m: same as above but since these are periodic colormaps, change the default length to show 3 cycles.
author Carnë Draug <carandraug@octave.org>
date Thu, 19 Nov 2015 17:09:06 +0000
parents 7503499a252b
children 516bb87ea72e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19697
4197fc428c7d maint: Update copyright notices for 2015.
John W. Eaton <jwe@octave.org>
parents: 19613
diff changeset
1 ## Copyright (C) 1999-2015 Kai Habel
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
2 ##
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
3 ## This file is part of Octave.
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
4 ##
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6791
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: 6791
diff changeset
8 ## your option) any later version.
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
9 ##
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
13 ## General Public License for more details.
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
14 ##
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
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: 6791
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: 6791
diff changeset
17 ## <http://www.gnu.org/licenses/>.
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
18
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
19 ## -*- texinfo -*-
11420
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
20 ## @deftypefn {Function File} {@var{map} =} spring ()
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
21 ## @deftypefnx {Function File} {@var{map} =} spring (@var{n})
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
22 ## Create color colormap. This colormap varies from magenta to yellow.
20158
7503499a252b doc: Update docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents: 19833
diff changeset
23 ##
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
24 ## The argument @var{n} must be a scalar.
11420
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
25 ## If unspecified, the length of the current colormap, or 64, is used.
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
26 ## @seealso{colormap}
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
27 ## @end deftypefn
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
28
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
29 ## Author: Kai Habel <kai.habel@gmx.de>
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
30
14640
b9c02ee24de1 new colormap options
Carnë Draug <carandraug+dev@gmail.com>
parents: 14279
diff changeset
31 ## PKG_ADD: colormap ("register", "spring");
b9c02ee24de1 new colormap options
Carnë Draug <carandraug+dev@gmail.com>
parents: 14279
diff changeset
32 ## PKG_DEL: colormap ("unregister", "spring");
b9c02ee24de1 new colormap options
Carnë Draug <carandraug+dev@gmail.com>
parents: 14279
diff changeset
33
19613
e8e3a89fa370 Fix colormap functions when N is not of class double (bug #44070)
Carnë Draug <carandraug@octave.org>
parents: 17744
diff changeset
34 function map = spring (n = rows (colormap ()))
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
35
19613
e8e3a89fa370 Fix colormap functions when N is not of class double (bug #44070)
Carnë Draug <carandraug@octave.org>
parents: 17744
diff changeset
36 if (nargin > 1)
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
37 print_usage ();
19613
e8e3a89fa370 Fix colormap functions when N is not of class double (bug #44070)
Carnë Draug <carandraug@octave.org>
parents: 17744
diff changeset
38 elseif (! isscalar (n))
e8e3a89fa370 Fix colormap functions when N is not of class double (bug #44070)
Carnë Draug <carandraug@octave.org>
parents: 17744
diff changeset
39 error ("spring: N must be a scalar");
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
40 endif
19613
e8e3a89fa370 Fix colormap functions when N is not of class double (bug #44070)
Carnë Draug <carandraug@octave.org>
parents: 17744
diff changeset
41 n = double (n);
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
42
11420
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
43 if (n == 1)
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
44 map = [1, 0, 1];
11420
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
45 elseif (n > 1)
466ba499eff5 Update docstrings for colormap files.
Rik <octave@nomad.inbox5.com>
parents: 9751
diff changeset
46 r = ones (n, 1);
14279
f205d0074687 Update colormap files with faster code.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
47 g = [0:(n-1)]' / (n - 1);
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
48 b = 1 - g;
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
49 map = [r, g, b];
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
50 else
14641
5f1d4def40e1 improve compatibility of colormap functions
Carnë Draug <carandraug+dev@gmail.com>
parents: 14640
diff changeset
51 map = zeros (0, 3);
6788
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
52 endif
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
53
c81a0f3f5a82 [project @ 2007-07-23 22:05:29 by dbateman]
dbateman
parents:
diff changeset
54 endfunction
9751
2b0cc0b6db61 Add demos for colormap functions
Soren Hauberg <hauberg@gmail.com>
parents: 9245
diff changeset
55
19833
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19697
diff changeset
56
9751
2b0cc0b6db61 Add demos for colormap functions
Soren Hauberg <hauberg@gmail.com>
parents: 9245
diff changeset
57 %!demo
20724
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
58 %! ## Show the 'spring' colormap profile and as an image
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
59 %! cmap = spring (256);
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
60 %! subplot (2, 1, 1);
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
61 %! rgbplot (cmap, "composite");
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
62 %! subplot (2, 1, 2);
0338dc274ec5 Rewrite colormap demos with rgbplot() to show both composite and profile.
Carnë Draug <carandraug@octave.org>
parents: 20158
diff changeset
63 %! rgbplot (cmap);