Mercurial > octave
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 |
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 | 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 | |
7016 | 7 ## the Free Software Foundation; either version 3 of the License, or (at |
8 ## your option) any later version. | |
6788 | 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 | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
6788 | 18 |
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 | 26 ## @seealso{colormap} |
27 ## @end deftypefn | |
28 | |
29 ## Author: Kai Habel <kai.habel@gmx.de> | |
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 | 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 | 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 | 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 | 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 | 48 b = 1 - g; |
49 map = [r, g, b]; | |
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 | 52 endif |
53 | |
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); |