annotate scripts/plot/draw/colorbar.m @ 18916:04a00ba54557

colorbar.m: Show ticks on colorbar. * colorbar.m: set axis "layer" to "top" to display tickmarks above colorbar image.
author Rik <rik@octave.org>
date Mon, 30 Jun 2014 21:11:38 -0700
parents 868dcab453bd
children 0e1f5a750d00
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17744
d63878346099 maint: Update copyright notices for release.
John W. Eaton <jwe@octave.org>
parents: 17703
diff changeset
1 ## Copyright (C) 2008-2013 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 -*-
17122
eaab03308c0b doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents: 17096
diff changeset
20 ## @deftypefn {Command} {} colorbar
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
21 ## @deftypefnx {Function File} {} colorbar (@var{loc})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
22 ## @deftypefnx {Function File} {} colorbar (@var{delete_option})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
23 ## @deftypefnx {Function File} {} colorbar (@var{hcb}, @dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
24 ## @deftypefnx {Function File} {} colorbar (@var{hax}, @dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
25 ## @deftypefnx {Function File} {} colorbar (@dots{}, "peer", @var{hax}, @dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
26 ## @deftypefnx {Function File} {} colorbar (@dots{}, "location", @var{loc}, @dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
27 ## @deftypefnx {Function File} {} colorbar (@dots{}, @var{prop}, @var{val}, @dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
28 ## @deftypefnx {Function File} {@var{h} =} colorbar (@dots{})
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
29 ## Add a colorbar to the current axes.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
30 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
31 ## A colorbar displays the current colormap along with numerical rulings
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
32 ## so that the color scale can be interpreted.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
33 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
34 ## The optional input @var{loc} determines the location of the colorbar.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
35 ## Valid values for @var{loc} are
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
36 ##
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
37 ## @table @asis
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
38 ## @item @qcode{"EastOutside"}
9040
dbd0c77e575e Cleanup documentation file plot.texi
Rik <rdrider0-list@yahoo.com>
parents: 8920
diff changeset
39 ## Place the colorbar outside the plot to the right. This is the default.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
40 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
41 ## @item @qcode{"East"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
42 ## Place the colorbar inside the plot to the right.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
43 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
44 ## @item @qcode{"WestOutside"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
45 ## Place the colorbar outside the plot to the left.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
46 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
47 ## @item @qcode{"West"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
48 ## Place the colorbar inside the plot to the left.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
49 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
50 ## @item @qcode{"NorthOutside"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
51 ## Place the colorbar above the plot.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
52 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
53 ## @item @qcode{"North"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
54 ## Place the colorbar at the top of the plot.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
55 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
56 ## @item @qcode{"SouthOutside"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
57 ## Place the colorbar under the plot.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10793
diff changeset
58 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
59 ## @item @qcode{"South"}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
60 ## Place the colorbar at the bottom of the plot.
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
61 ## @end table
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
62 ##
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
63 ## To remove a colorbar from a plot use any one of the following keywords for
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
64 ## the @var{delete_option}: @qcode{"delete"}, @qcode{"hide"}, @qcode{"off"}.
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
65 ##
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
66 ## If the argument @qcode{"peer"} is given, then the following argument is
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
67 ## treated as the axes handle in which to add the colorbar. Alternatively,
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
68 ## If the first argument @var{hax} is an axes handle, then the colorbar is
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
69 ## added to this axis, rather than the current axes returned by @code{gca}.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
70 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
71 ## If the first argument @var{hcb} is a handle to a colorbar object, then
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
72 ## operate on this colorbar directly.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
73 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
74 ## Additional property/value pairs are passed directly to the underlying axes
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
75 ## object.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
76 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
77 ## The optional return value @var{h} is a graphics handle to the created
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
78 ## colorbar object.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
79 ##
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
80 ## Implementation Note: A colorbar is created as an additional axes to the
17281
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
81 ## current figure with the @qcode{"tag"} property set to @qcode{"colorbar"}.
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
82 ## The created axes object has the extra property @qcode{"location"} which
bc924baa2c4e doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents: 17190
diff changeset
83 ## controls the positioning of the colorbar.
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
84 ## @seealso{colormap}
7189
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
85 ## @end deftypefn
e8d953d03f6a [project @ 2007-11-26 20:42:09 by dbateman]
dbateman
parents:
diff changeset
86
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
87 function h = colorbar (varargin)
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
88
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
89 [hcb, varargin, nargin] = __plt_get_axis_arg__ ("colorbar", varargin{:});
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
90
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
91 if (hcb && ! strcmp (get (hcb, "tag"), "colorbar"))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
92 ax = hcb;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
93 hcb = [];
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
94 else
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
95 ax = [];
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
96 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
97 loc = "";
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
98 args = {};
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
99 deleting = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
100
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
101 i = 1;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
102 while (i <= nargin)
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
103 arg = varargin{i++};
14868
5d3a684236b0 maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents: 14846
diff changeset
104 if (ischar (arg))
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
105 switch (tolower (arg))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
106 case "peer"
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
107 if (i > nargin)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
108 error ('colorbar: missing axes handle after "peer"');
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
109 else
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
110 ax = varargin{i++};
17125
b5d6314314fc Change various plot functions to take advantage of new isaxes() function.
Rik <rik@octave.org>
parents: 17122
diff changeset
111 if (! isscalar (ax) && ! isaxes (ax))
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
112 error ('colorbar: expecting an axes handle following "peer"');
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
113 endif
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
114 endif
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
115 case {"north", "south", "east", "west",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
116 "northoutside", "southoutside", "eastoutside", "westoutside"}
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
117 loc = tolower (arg);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
118 case "location"
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
119 if (i > nargin)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
120 error ('colorbar: missing value after "location"');
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
121 else
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
122 loc = tolower (varargin{i++});
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
123 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
124 case {"delete", "hide", "off", "none"}
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
125 deleting = true;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
126 otherwise
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
127 args{end+1} = arg;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
128 endswitch
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
129 else
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
130 args{end+1} = arg;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
131 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
132 endwhile
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
133
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
134 ## Handle changes to existing colorbar
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
135 if (! isempty (hcb))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
136 if (deleting)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
137 delete (hcb);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
138 if (nargout > 0)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
139 h = hcb;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
140 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
141 return;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
142 else
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
143 ## FIXME: No listener on location property so have to re-create
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
144 ## colorbar whenever an option changes.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
145 ## re-instate this code if listener is developed.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
146 # if (! isempty (loc))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
147 # set (hcb, "location", loc);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
148 # endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
149 # if (! isempty (args))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
150 # set (hcb, args{:});
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
151 # endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
152 ax = get (get (hcb, "parent"), "currrentaxes");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
153 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
154 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
155
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
156 if (isempty (loc))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
157 loc = "eastoutside";
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
158 endif
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
159 if (isempty (ax))
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
160 ax = gca ();
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
161 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
162
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
163 showhiddenhandles = get (0, "showhiddenhandles");
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
164 unwind_protect
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
165 set (0, "showhiddenhandles", "on");
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
166 cax = findobj (get (ax, "parent"), "tag", "colorbar", "type", "axes", "axes", ax);
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
167 if (! isempty (cax))
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
168 delete (cax);
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
169 endif
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
170 unwind_protect_cleanup
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
171 set (0, "showhiddenhandles", showhiddenhandles);
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
172 end_unwind_protect
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
173
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
174 if (! deleting)
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
175 ## FIXME: Matlab does not require the "position" property to be active.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
176 ## Is there a way to determine the plotbox position for the
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
177 ## gnuplot graphics toolkit with the outerposition is active?
10931
a72d53df4fa6 Treatment of activepositionproperty for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10920
diff changeset
178 set (ax, "activepositionproperty", "position");
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
179 obj = get (ax);
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
180 obj.__cbar_hax__ = ax;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
181 position = obj.position;
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
182 ## FIXME: Should this be ancestor to accommodate hggroups?
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
183 hpar = get (ax, "parent");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
184 clen = rows (get (hpar, "colormap"));
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
185 cext = get (ax, "clim");
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
186 cdiff = (cext(2) - cext(1)) / clen / 2;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
187 cmin = cext(1) + cdiff;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
188 cmax = cext(2) - cdiff;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
189
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
190 [pos, cpos, vertical, mirror] = ...
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
191 __position_colorbox__ (loc, obj, ancestor (ax, "figure"));
10931
a72d53df4fa6 Treatment of activepositionproperty for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10920
diff changeset
192 set (ax, "position", pos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
193
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
194 cax = __go_axes__ (hpar, "tag", "colorbar",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
195 "handlevisibility", "on",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
196 "activepositionproperty", "position",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
197 "position", cpos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
198 addproperty ("location", cax, "radio",
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
199 "eastoutside|east|westoutside|west|northoutside|north|southoutside|south",
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
200 loc);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
201 addproperty ("axes", cax, "handle", ax);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
202
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
203 if (vertical)
17703
4d8ddc44d1f2 colorbar.m: Avoid segfault in colorbar (bug #40308)
Rik <rik@octave.org>
parents: 17572
diff changeset
204 ## Use low-level form to avoid calling newplot which changes axes
4d8ddc44d1f2 colorbar.m: Avoid segfault in colorbar (bug #40308)
Rik <rik@octave.org>
parents: 17572
diff changeset
205 hi = image (cax, "xdata", [0,1], "ydata", [cmin, cmax],
4d8ddc44d1f2 colorbar.m: Avoid segfault in colorbar (bug #40308)
Rik <rik@octave.org>
parents: 17572
diff changeset
206 "cdata", [1 : clen]');
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
207 if (mirror)
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
208 set (cax, "xtick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
209 "ylim", cext, "ylimmode", "manual",
18916
04a00ba54557 colorbar.m: Show ticks on colorbar.
Rik <rik@octave.org>
parents: 18761
diff changeset
210 "yaxislocation", "right", "layer", "top", args{:});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
211 else
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
212 set (cax, "xtick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
213 "ylim", cext, "ylimmode", "manual",
18916
04a00ba54557 colorbar.m: Show ticks on colorbar.
Rik <rik@octave.org>
parents: 18761
diff changeset
214 "yaxislocation", "left", "layer", "top", args{:});
8101
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
215 endif
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
216 else
17703
4d8ddc44d1f2 colorbar.m: Avoid segfault in colorbar (bug #40308)
Rik <rik@octave.org>
parents: 17572
diff changeset
217 hi = image (cax, "xdata", [cmin, cmax], "ydata", [0,1],
4d8ddc44d1f2 colorbar.m: Avoid segfault in colorbar (bug #40308)
Rik <rik@octave.org>
parents: 17572
diff changeset
218 "cdata", [1 : clen]);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
219 if (mirror)
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
220 set (cax, "ytick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
221 "xlim", cext, "xlimmode", "manual",
18916
04a00ba54557 colorbar.m: Show ticks on colorbar.
Rik <rik@octave.org>
parents: 18761
diff changeset
222 "xaxislocation", "top", "layer", "top", args{:});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
223 else
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
224 set (cax, "ytick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
225 "xlim", cext, "xlimmode", "manual",
18916
04a00ba54557 colorbar.m: Show ticks on colorbar.
Rik <rik@octave.org>
parents: 18761
diff changeset
226 "xaxislocation", "bottom", "layer", "top", args{:});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
227 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
228 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
229
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
230 ## Dummy object placed in axis to delete colorbar when axis is deleted.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
231 ctext = text (0, 0, "", "tag", "colorbar",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
232 "visible", "off", "handlevisibility", "off",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
233 "xliminclude", "off", "yliminclude", "off",
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
234 "zliminclude", "off",
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
235 "deletefcn", {@deletecolorbar, cax, obj});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
236
14777
1230d5d58d2d Fix segfault when replacing a colorbar axis. (Bug # 36576)
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
237 set (cax, "deletefcn", {@resetaxis, ax, obj});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
238
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
239 addlistener (hpar, "colormap", {@update_colorbar_cmap, hi, vertical, clen});
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
240 addlistener (ax, "clim", {@update_colorbar_clim, hi, vertical});
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
241 addlistener (ax, "dataaspectratio", {@update_colorbar_axis, cax, obj});
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
242 addlistener (ax, "dataaspectratiomode", {@update_colorbar_axis, cax, obj});
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
243 addlistener (ax, "plotboxaspectratio", {@update_colorbar_axis, cax, obj});
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
244 addlistener (ax, "plotboxaspectratiomode", {@update_colorbar_axis, cax, obj});
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11587
diff changeset
245 addlistener (ax, "position", {@update_colorbar_axis, cax, obj});
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
246
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
247 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
248
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
249 if (nargout > 0)
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
250 h = cax;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
251 endif
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
252
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
253 endfunction
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
254
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
255 function deletecolorbar (h, d, hc, orig_props)
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
256 ## Don't delete the colorbar and reset the axis size if the
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
257 ## parent figure is being deleted.
17125
b5d6314314fc Change various plot functions to take advantage of new isaxes() function.
Rik <rik@octave.org>
parents: 17122
diff changeset
258 if (isaxes (hc)
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
259 && (isempty (gcbf ()) || strcmp (get (gcbf (), "beingdeleted"), "off")))
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
260 if (strcmp (get (hc, "beingdeleted"), "off"))
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
261 delete (hc);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
262 endif
11149
fe3c3dfc07eb style fix: break lines before && and ||, not after
John W. Eaton <jwe@octave.org>
parents: 11001
diff changeset
263 if (!isempty (ancestor (h, "axes"))
fe3c3dfc07eb style fix: break lines before && and ||, not after
John W. Eaton <jwe@octave.org>
parents: 11001
diff changeset
264 && strcmp (get (ancestor (h, "axes"), "beingdeleted"), "off"))
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
265 ax = ancestor (h, "axes");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
266 units = get (ax, "units");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
267 set (ax, "units", orig_props.units);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
268 set (ancestor (h, "axes"), "position", orig_props.position,
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
269 "outerposition", orig_props.outerposition,
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
270 "activepositionproperty", orig_props.activepositionproperty);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
271 set (ax, "units", units);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
272 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
273 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
274 endfunction
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
275
14777
1230d5d58d2d Fix segfault when replacing a colorbar axis. (Bug # 36576)
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
276 function resetaxis (cax, d, ax, orig_props)
17125
b5d6314314fc Change various plot functions to take advantage of new isaxes() function.
Rik <rik@octave.org>
parents: 17122
diff changeset
277 if (isaxes (ax))
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
278 ## FIXME: Probably don't want to delete everyone's listeners on colormap.
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
279 dellistener (get (ax, "parent"), "colormap");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
280 dellistener (ax, "clim");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
281 dellistener (ax, "dataaspectratio");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
282 dellistener (ax, "dataaspectratiomode");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
283 dellistener (ax, "plotboxaspectratio");
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
284 dellistener (ax, "plotboxaspectratiomode");
15202
f3b5cadfd6d5 fix missing semicolons in various .m files
John W. Eaton <jwe@octave.org>
parents: 14868
diff changeset
285 dellistener (ax, "position");
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
286
14777
1230d5d58d2d Fix segfault when replacing a colorbar axis. (Bug # 36576)
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
287 units = get (ax, "units");
15202
f3b5cadfd6d5 fix missing semicolons in various .m files
John W. Eaton <jwe@octave.org>
parents: 14868
diff changeset
288 set (ax, "units", orig_props.units);
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
289 set (ax, "position", orig_props.position,
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
290 "outerposition", orig_props.outerposition,
14777
1230d5d58d2d Fix segfault when replacing a colorbar axis. (Bug # 36576)
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
291 "activepositionproperty", orig_props.activepositionproperty);
15202
f3b5cadfd6d5 fix missing semicolons in various .m files
John W. Eaton <jwe@octave.org>
parents: 14868
diff changeset
292 set (ax, "units", units);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
293 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
294 endfunction
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
295
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
296 function update_colorbar_clim (hax, d, hi, vert)
17125
b5d6314314fc Change various plot functions to take advantage of new isaxes() function.
Rik <rik@octave.org>
parents: 17122
diff changeset
297 if (isaxes (hax)
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
298 && (isempty (gcbf ()) || strcmp (get (gcbf (), "beingdeleted"), "off")))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
299 clen = rows (get (get (hax, "parent"), "colormap"));
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
300 cext = get (hax, "clim");
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
301 cdiff = (cext(2) - cext(1)) / clen / 2;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
302 cmin = cext(1) + cdiff;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
303 cmax = cext(2) - cdiff;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
304
17412
95bfa04ab514 Fix bug in colorbar demo #24.
Rik <rik@octave.org>
parents: 17281
diff changeset
305 hiax = get (hi, "parent");
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
306 if (vert)
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
307 set (hi, "ydata", [cmin, cmax]);
17412
95bfa04ab514 Fix bug in colorbar demo #24.
Rik <rik@octave.org>
parents: 17281
diff changeset
308 set (hiax, "ylim", cext);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
309 else
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
310 set (hi, "xdata", [cmin, cmax]);
17412
95bfa04ab514 Fix bug in colorbar demo #24.
Rik <rik@octave.org>
parents: 17281
diff changeset
311 set (hiax, "xlim", cext);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
312 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
313 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
314 endfunction
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
315
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
316 function update_colorbar_cmap (hf, d, hi, vert, init_sz)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
317 persistent sz = init_sz;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
318
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
319 if (ishandle (hf) && strcmp (get (hf, "type"), "figure")
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
320 && (isempty (gcbf ()) || strcmp (get (gcbf (), "beingdeleted"), "off")))
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
321 clen = rows (get (hf, "colormap"));
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
322 if (clen != sz)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
323 if (vert)
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
324 set (hi, "cdata", [1:clen]');
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
325 else
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
326 set (hi, "cdata", [1:clen]);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
327 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
328 sz = clen;
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
329 ## Also update limits on axis or there will be white gaps
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
330 update_colorbar_clim (get (hi, "parent"), d, hi, vert);
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
331 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
332 endif
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
333 endfunction
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
334
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
335 function update_colorbar_axis (h, d, cax, orig_props)
17125
b5d6314314fc Change various plot functions to take advantage of new isaxes() function.
Rik <rik@octave.org>
parents: 17122
diff changeset
336 if (isaxes (cax)
14846
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14777
diff changeset
337 && (isempty (gcbf ()) || strcmp (get (gcbf (), "beingdeleted"),"off")))
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
338 loc = get (cax, "location");
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
339 obj = get (h);
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
340 obj.__cbar_hax__ = h;
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
341 obj.position = orig_props.position;
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
342 obj.outerposition = orig_props.outerposition;
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
343 [pos, cpos, vertical, mirror] = ...
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
344 __position_colorbox__ (loc, obj, ancestor (h, "figure"));
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
345
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
346 if (vertical)
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
347 if (mirror)
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
348 set (cax, "xtick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
349 "yaxislocation", "right", "position", cpos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
350 else
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
351 set (cax, "xtick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
352 "yaxislocation", "left", "position", cpos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
353 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
354 else
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
355 if (mirror)
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
356 set (cax, "ytick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
357 "xaxislocation", "top", "position", cpos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
358 else
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10534
diff changeset
359 set (cax, "ytick", [], "xdir", "normal", "ydir", "normal",
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
360 "xaxislocation", "bottom", "position", cpos);
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
361 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
362 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
363
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
364 endif
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
365 endfunction
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
366
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
367 function [pos, cpos, vertical, mirr] = __position_colorbox__ (cbox, obj, cf)
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
368
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
369 ## This will always represent the position prior to adding the colorbar.
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
370 pos = obj.position;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
371 sz = pos(3:4);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
372
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
373 if (strcmp (obj.plotboxaspectratiomode, "manual")
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
374 || strcmp (obj.dataaspectratiomode, "manual"))
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
375 if (isempty (strfind (cbox, "outside")))
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
376 scale = 1.0;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
377 else
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
378 scale = 0.8;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
379 endif
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
380 if (isempty (strfind (cbox, "east")) && isempty (strfind (cbox, "west")))
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
381 scale = [1, scale];
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
382 else
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
383 scale = [scale, 1];
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
384 endif
11576
8ac9687dbe9f rename backend to graphics_toolkit
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
385 if (strcmp (get (cf, "__graphics_toolkit__"), "gnuplot")
11001
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
386 && strcmp (obj.activepositionproperty, "outerposition"))
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
387 obj.outerposition = obj.outerposition .* [1, 1, scale];
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
388 off = 0.5 * (obj.outerposition (3:4) - __actual_axis_position__ (obj)(3:4));
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
389 else
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
390 obj.position = obj.position .* [1, 1, scale];
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
391 off = 0.5 * (obj.position (3:4) - __actual_axis_position__ (obj)(3:4));
2ab8cc6dcced Special treatment activepositionproperty = outerposition for gnuplot.
Ben Abbott <bpabbott@mac.com>
parents: 10953
diff changeset
392 endif
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
393 else
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
394 off = 0.0;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
395 endif
8101
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
396
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
397 switch (cbox)
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
398 case "northoutside"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
399 origin = pos(1:2) + [0., 0.9] .* sz + [1, -1] .* off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
400 sz = sz .* [1.0, 0.06];
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
401 pos(4) = 0.8 * pos(4);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
402 mirr = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
403 vertical = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
404 case "north"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
405 origin = pos(1:2) + [0.05, 0.9] .* sz + [1, -1] .* off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
406 sz = sz .* [1.0, 0.06] * 0.9;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
407 mirr = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
408 vertical = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
409 case "southoutside"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
410 origin = pos(1:2) + off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
411 sz = sz .* [1.0, 0.06];
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
412 pos(2) = pos(2) + pos(4) * 0.2;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
413 pos(4) = 0.8 * pos(4);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
414 mirr = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
415 vertical = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
416 case "south"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
417 origin = pos(1:2) + [0.05, 0.05] .* sz + off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
418 sz = sz .* [1.0, 0.06] * 0.9;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
419 mirr = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
420 vertical = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
421 case "eastoutside"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
422 origin = pos(1:2) + [0.9, 0] .* sz + [-1, 1] .* off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
423 sz = sz .* [0.06, 1.0];
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
424 pos(3) = 0.8 * pos(3);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
425 mirr = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
426 vertical = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
427 case "east"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
428 origin = pos(1:2) + [0.9, 0.05] .* sz + [-1, 1] .* off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
429 sz = sz .* [0.06, 1.0] * 0.9;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
430 mirr = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
431 vertical = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
432 case "westoutside"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
433 origin = pos(1:2) + off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
434 sz = sz .* [0.06, 1.0];
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
435 pos(1) = pos(1) + pos(3) * 0.2;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
436 pos(3) = 0.8 * pos(3);
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
437 mirr = false;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
438 vertical = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
439 case "west"
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
440 origin = pos(1:2) + [0.05, 0.05] .* sz + off;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
441 sz = sz .* [0.06, 1.0] .* 0.9;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
442 mirr = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
443 vertical = true;
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
444 endswitch
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
445
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
446 cpos = [origin, sz];
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
447
17096
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
448 if (strcmp (obj.plotboxaspectratiomode, "manual")
33037eddecd2 Overhaul colorbar function.
Rik <rik@octave.org>
parents: 15202
diff changeset
449 || strcmp (obj.dataaspectratiomode, "manual"))
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
450 obj.position = pos;
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
451 actual_pos = __actual_axis_position__ (obj);
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
452 if (strfind (cbox, "outside"))
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
453 scale = 1.0;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
454 else
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
455 scale = 0.9;
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
456 endif
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
457 if (sz(1) > sz(2))
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
458 ## Ensure north or south colorbars are the proper length
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
459 dx = (1-scale)*actual_pos(3);
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
460 cpos(1) = actual_pos(1) + dx/2;
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
461 cpos(3) = actual_pos(3) - dx;
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
462 else
10558
23c1910dbd8e Fix colorbar() bugs for manual plotboxaspectratio.
Ben Abbott <bpabbott@mac.com>
parents: 10549
diff changeset
463 ## Ensure east or west colorbars are the proper height
10532
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
464 dy = (1-scale)*actual_pos(4);
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
465 cpos(2) = actual_pos(2) + dy/2;
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
466 cpos(4) = actual_pos(4) - dy;
568c7c041fac colorbar.m: Consistent treatment of plotboxaspectratio. Add listener for plotboxaspectratiomode.
Ben Abbott <bpabbott@mac.com>
parents: 10226
diff changeset
467 endif
8208
f6ca8ff51818 [mq]: graphics-backend
John W. Eaton <jwe@octave.org>
parents: 8190
diff changeset
468 endif
8101
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
469
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
470 endfunction
86955a1559c5 improve speed of cell2mat
David Bateman <dbateman@free.fr>
parents: 7726
diff changeset
471
7726
1b954fdaf4ff Try to get the colorbar position right for manual aspect ratios as well
David Bateman <dbateman@free.fr>
parents: 7264
diff changeset
472
1b954fdaf4ff Try to get the colorbar position right for manual aspect ratios as well
David Bateman <dbateman@free.fr>
parents: 7264
diff changeset
473 %!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
474 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
475 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
476 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
477 %! imagesc (x);
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
478 %! colorbar ();
17190
df4c4b7708a4 Add titles and clean-up plotting %!demos.
Rik <rik@octave.org>
parents: 17125
diff changeset
479 %! title ('colorbar() example');
8892
32d218494602 colorbar.m: Bug fix. Allow hidden colorbars to be deleted, and replace existing colorbar when a new one is created. Additional demos are included to verify these behaviors.
Ben Abbott <bpabbott@mac.com>
parents: 8889
diff changeset
480
9281
02b16eeb3167 Fix yticklabels for log scale colorbar.
Ben Abbott <bpabbott@mac.com>
parents: 9262
diff changeset
481 %!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
482 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
483 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
484 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
485 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
486 %! colorbar ('westoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
487
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
488 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
489 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
490 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
491 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
492 %! imagesc (x);
14363
f3d52523cde1 Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents: 14247
diff changeset
493 %! colorbar ('peer', gca, 'northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
494
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
495 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
496 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
497 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
498 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
499 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
500 %! colorbar ('southoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
501
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
502 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
503 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
504 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
505 %! contour (peaks ());
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
506 %! colorbar ('west');
9281
02b16eeb3167 Fix yticklabels for log scale colorbar.
Ben Abbott <bpabbott@mac.com>
parents: 9262
diff changeset
507
02b16eeb3167 Fix yticklabels for log scale colorbar.
Ben Abbott <bpabbott@mac.com>
parents: 9262
diff changeset
508 %!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
509 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
510 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
511 %! subplot (2,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
512 %! contour (peaks ());
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
513 %! colorbar ('east');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
514 %! subplot (2,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
515 %! contour (peaks ());
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
516 %! colorbar ('west');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
517 %! subplot (2,2,3);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
518 %! contour (peaks ());
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
519 %! colorbar ('north');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
520 %! subplot (2,2,4);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
521 %! contour (peaks ());
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
522 %! colorbar ('south');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
523
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
524 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
525 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
526 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
527 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
528 %! subplot (2,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
529 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
530 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
531 %! subplot (2,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
532 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
533 %! colorbar ('westoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
534 %! subplot (2,2,3);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
535 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
536 %! colorbar ('northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
537 %! subplot (2,2,4);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
538 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
539 %! colorbar ('southoutside');
9281
02b16eeb3167 Fix yticklabels for log scale colorbar.
Ben Abbott <bpabbott@mac.com>
parents: 9262
diff changeset
540
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
541 %!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
542 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
543 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
544 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
545 %! subplot (1,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
546 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
547 %! axis square;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
548 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
549 %! subplot (1,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
550 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
551 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
552 %! colorbar ('westoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
553
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
554 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
555 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
556 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
557 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
558 %! subplot (1,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
559 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
560 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
561 %! colorbar ('northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
562 %! subplot (1,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
563 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
564 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
565 %! colorbar ('southoutside');
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
566
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
567 %!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
568 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
569 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
570 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
571 %! subplot (2,1,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
572 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
573 %! axis square;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
574 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
575 %! subplot (2,1,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
576 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
577 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
578 %! colorbar ('westoutside');
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
579
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
580 %!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
581 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
582 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
583 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
584 %! subplot (2,1,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
585 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
586 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
587 %! colorbar ('northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
588 %! subplot (2,1,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
589 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
590 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
591 %! colorbar ('southoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
592
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
593 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
594 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
595 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
596 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
597 %! subplot (1,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
598 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
599 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
600 %! subplot (1,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
601 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
602 %! colorbar ('westoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
603
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
604 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
605 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
606 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
607 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
608 %! subplot (1,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
609 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
610 %! colorbar ('northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
611 %! subplot (1,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
612 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
613 %! colorbar ('southoutside');
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
614
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
615 %!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
616 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
617 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
618 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
619 %! subplot (2,1,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
620 %! imagesc (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
621 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
622 %! subplot (2,1,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
623 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
624 %! colorbar ('westoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
625
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
626 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
627 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
628 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
629 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
630 %! subplot (2,1,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
631 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
632 %! colorbar ('northoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
633 %! subplot (2,1,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
634 %! imagesc (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
635 %! colorbar ('southoutside');
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
636
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
637 %!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
638 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
639 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
640 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
641 %! subplot (1,2,1);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
642 %! contour (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
643 %! axis square;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
644 %! colorbar ('east');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
645 %! xlim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
646 %! ylim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
647 %! subplot (1,2,2);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
648 %! contour (x);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
649 %! colorbar ('west');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
650 %! xlim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
651 %! ylim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
652
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
653 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
654 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
655 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
656 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
657 %! contour (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
658 %! xlim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
659 %! ylim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
660 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
661 %! colorbar off;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
662
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
663 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
664 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
665 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
666 %! n = 64; x = kron (1:n, ones (n,1)); x = abs (x - x.');
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
667 %! contour (x);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
668 %! xlim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
669 %! ylim ([1, 64]);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
670 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
671
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
672 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
673 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
674 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
675 %! imagesc (1 ./ hilb (99));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
676 %! h = colorbar ();
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
677 %! set (h, 'yscale', 'log');
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
678
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
679 %!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
680 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
681 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
682 %! imagesc (log10 (1 ./ hilb (99)));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
683 %! h = colorbar ();
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
684 %! ytick = get (h, 'ytick');
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
685 %! set (h, 'yticklabel', sprintf ('10^{%g}|', ytick));
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
686
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
687 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
688 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
689 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
690 %! n = 5; x = linspace (0,5,n); y = linspace (0,1,n);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
691 %! imagesc (1 ./ hilb (n));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
692 %! axis equal;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
693 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
694
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
695 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
696 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
697 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
698 %! n = 5; x = linspace (0,5,n); y = linspace (0,1,n);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
699 %! imagesc (x, y, 1 ./ hilb (n));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
700 %! axis equal;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
701 %! colorbar ();
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
702
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
703 %!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
704 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
705 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
706 %! n = 5; x = linspace (0,5,n); y = linspace (0,1,n);
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
707 %! imagesc (y, x, 1 ./ hilb (n));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
708 %! axis equal;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
709 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
710
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
711 ## This requires that the axes position be properly determined for 'axis equal'
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
712 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
713 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
714 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
715 %! axes;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
716 %! colorbar ();
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
717 %! hold on;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
718 %! contour (peaks ());
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
719 %! hold off;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
720
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
721 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
722 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
723 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
724 %! plot ([0, 2]);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
725 %! colorbar ('east');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
726 %! axis square;
10910
40cf7cc4ea62 Properly interpret plotboxaspectratio when 3D objects are viewed as 2D.
Ben Abbott <bpabbott@mac.com>
parents: 10821
diff changeset
727
40cf7cc4ea62 Properly interpret plotboxaspectratio when 3D objects are viewed as 2D.
Ben Abbott <bpabbott@mac.com>
parents: 10821
diff changeset
728 %!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
729 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
730 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
731 %! plot ([0, 2]);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
732 %! colorbar ('eastoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
733 %! axis square;
9297
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
734
0d9f925b9705 colorbar.m: Colorbar 'handlevisibility' should be 'on'. Add additional demos which illustrate problems with the present implementation.
Ben Abbott <bpabbott@mac.com>
parents: 9281
diff changeset
735 %!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
736 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
737 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
738 %! pcolor (peaks (20));
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
739 %! shading interp;
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
740 %! axis ('tight', 'square');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
741 %! colorbar ();
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
742 #%! axes ('color','none','box','on','activepositionproperty','position');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
743
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
744 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
745 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
746 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
747 %! plot ([0, 2]);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
748 %! colorbar ('east');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
749 %! axis equal;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
750
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
751 %!demo
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
752 %! clf;
14247
c4fa5e0b6193 test: Make surface demos reproducible by setting colormap to default at start of demo.
Rik <octave@nomad.inbox5.com>
parents: 14245
diff changeset
753 %! colormap ('default');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
754 %! plot ([0, 2]);
14245
4506eade9f04 Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents: 14237
diff changeset
755 %! colorbar ('eastoutside');
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
756 %! axis equal;
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
757