Mercurial > hg > octave-lyh
annotate scripts/plot/loglog.m @ 13124:2ea1658ad049
Don't use explicit figure number for tests to avoid interference with any figures opened by user.
(plot/allchild.m, plot/ancestor.m, plot/cla.m, plot/clf.m, plot/close.m,
plot/findall.m, plot/findobj.m, plot/gca.m, plot/gcf.m, plot/hggroup.m,
plot/isfigure.m, plot/line.m, plot/loglog.m, plot/patch.m, plot/semilogx.m,
plot/semilogy.m, plot/surface.m, plot/view.m, plot/whitebg.m, plot/xlim.m,
plot/ylim.m, plot/zlim.m): Don't use explicit figure numer 1232 any more.
author | Kai Habel <kai.habel@gmx.de> |
---|---|
date | Sun, 11 Sep 2011 18:48:06 +0200 |
parents | 3b5449493bb8 |
children | e81ddf9cacd5 |
rev | line source |
---|---|
11523 | 1 ## Copyright (C) 1993-2011 John W. Eaton |
2313 | 2 ## |
3 ## This file is part of Octave. | |
4 ## | |
5 ## Octave is free software; you can redistribute it and/or modify it | |
6 ## under the terms of the GNU General Public License as published by | |
7016 | 7 ## the Free Software Foundation; either version 3 of the License, or (at |
8 ## your option) any later version. | |
2313 | 9 ## |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
14 ## | |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
245 | 18 |
3368 | 19 ## -*- texinfo -*- |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
20 ## @deftypefn {Function File} {} loglog (@var{y}) |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
21 ## @deftypefnx {Function File} {} loglog (@var{x}, @var{y}) |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
22 ## @deftypefnx {Function File} {} loglog (@var{x}, @var{y}, @var{property}, @var{value}, @dots{}) |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
23 ## @deftypefnx {Function File} {} loglog (@var{x}, @var{y}, @var{fmt}) |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
24 ## @deftypefnx {Function File} {} loglog (@var{h}, @dots{}) |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
25 ## @deftypefnx {Function File} {@var{h} =} loglog (@dots{}) |
6895 | 26 ## Produce a two-dimensional plot using log scales for both axes. See |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
27 ## the documentation of @code{plot} for a description of the arguments |
6895 | 28 ## that @code{loglog} will accept. |
29 ## @seealso{plot, semilogx, semilogy} | |
3368 | 30 ## @end deftypefn |
4 | 31 |
2314 | 32 ## Author: jwe |
33 | |
6302 | 34 function retval = loglog (varargin) |
4 | 35 |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
36 [h, varargin, nargs] = __plt_get_axis_arg__ ("loglog", varargin{:}); |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
37 |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
38 if (nargs < 1) |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
39 print_usage(); |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
40 endif |
7216 | 41 |
7207 | 42 oldh = gca (); |
43 unwind_protect | |
44 axes (h); | |
45 newplot (); | |
3063 | 46 |
7207 | 47 set (h, "xscale", "log", "yscale", "log"); |
10511
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
48 if (any( strcmp (get (gca, "nextplot"), {"new", "replace"}))) |
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
49 set (h, "xminortick", "on", "yminortick", "on"); |
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
50 endif |
4 | 51 |
7207 | 52 tmp = __plt__ ("loglog", h, varargin{:}); |
6302 | 53 |
7207 | 54 if (nargout > 0) |
55 retval = tmp; | |
56 endif | |
57 unwind_protect_cleanup | |
58 axes (oldh); | |
59 end_unwind_protect | |
4 | 60 |
61 endfunction | |
10511
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
62 |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
63 %!demo |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
64 %! clf (); |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
65 %! t = 1:0.01:10; |
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
66 %! x = sort ((t .* (1 + rand (size (t)))) .^ 2); |
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
67 %! y = ((t .* (1 + rand (size (t)))) .^ 2); |
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
68 %! loglog (x, y); |
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
69 |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
70 %!demo |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
71 %! clf (); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
72 %! a = logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
73 %! b =-logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
74 %! |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
75 %! subplot (1, 2, 1) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
76 %! loglog (a, b) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
77 %! xlabel ('loglog (a, b)') |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
78 %! |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
79 %! subplot (1, 2, 2) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
80 %! loglog (a, abs (b)) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
81 %! set (gca, 'ydir', 'reverse') |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
82 %! xlabel ('loglog (a, abs (b))') |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
83 |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
84 %!test |
13124
2ea1658ad049
Don't use explicit figure number for tests to avoid interference with any figures opened by user.
Kai Habel <kai.habel@gmx.de>
parents:
13104
diff
changeset
|
85 %! hf = figure ("visible", "off"); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
86 %! unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
87 %! a = logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
88 %! b = logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
89 %! loglog (a, b) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
90 %! assert (get (gca, "yscale"), "log"); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
91 %! assert (get (gca, "xscale"), "log"); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
92 %! unwind_protect_cleanup |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
93 %! close (hf); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
94 %! end_unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
95 |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
96 %!test |
13124
2ea1658ad049
Don't use explicit figure number for tests to avoid interference with any figures opened by user.
Kai Habel <kai.habel@gmx.de>
parents:
13104
diff
changeset
|
97 %! hf = figure ("visible", "off"); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
98 %! unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
99 %! a = logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
100 %! b =-logspace (-5, 1, 10); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
101 %! loglog (a, b) |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
102 %! axis tight |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
103 %! assert (all (get (gca, "ytick") < 0)); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
104 %! unwind_protect_cleanup |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
105 %! close (hf); |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
106 %! end_unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
107 |