Mercurial > hg > octave-lyh
annotate scripts/plot/loglog.m @ 17198:df4c4b7708a4
Add titles and clean-up plotting %!demos.
* scripts/plot/area.m, scripts/plot/axis.m, scripts/plot/bar.m,
scripts/plot/barh.m, scripts/plot/clabel.m, scripts/plot/colorbar.m,
scripts/plot/comet.m, scripts/plot/comet3.m, scripts/plot/contour.m,
scripts/plot/contour3.m, scripts/plot/contourf.m, scripts/plot/cylinder.m,
scripts/plot/ellipsoid.m, scripts/plot/errorbar.m, scripts/plot/ezplot.m,
scripts/plot/ezplot3.m, scripts/plot/ezpolar.m, scripts/plot/feather.m,
scripts/plot/fplot.m, scripts/plot/hold.m, scripts/plot/isosurface.m,
scripts/plot/legend.m, scripts/plot/loglog.m, scripts/plot/loglogerr.m,
scripts/plot/mesh.m, scripts/plot/meshc.m, scripts/plot/meshz.m,
scripts/plot/patch.m, scripts/plot/pcolor.m, scripts/plot/pie.m,
scripts/plot/pie3.m, scripts/plot/plot.m, scripts/plot/plot3.m,
scripts/plot/polar.m, scripts/plot/rectangle.m, scripts/plot/ribbon.m,
scripts/plot/rose.m, scripts/plot/scatter.m, scripts/plot/scatter3.m,
scripts/plot/semilogx.m, scripts/plot/semilogxerr.m, scripts/plot/semilogy.m,
scripts/plot/semilogyerr.m, scripts/plot/sombrero.m, scripts/plot/stem3.m,
scripts/plot/surf.m, scripts/plot/surfc.m, scripts/plot/surfl.m,
scripts/plot/title.m, scripts/plot/waterfall.m: Add titles and clean-up
plotting %!demos.
author | Rik <rik@octave.org> |
---|---|
date | Tue, 06 Aug 2013 14:34:20 -0700 |
parents | eaab03308c0b |
children | 87ba70043bfc |
rev | line source |
---|---|
14138
72c96de7a403
maint: update copyright notices for 2012
John W. Eaton <jwe@octave.org>
parents:
14001
diff
changeset
|
1 ## Copyright (C) 1993-2012 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}) |
17126
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
22 ## @deftypefnx {Function File} {} loglog (@var{x}, @var{y}, @var{prop}, @var{value}, @dots{}) |
10730
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}) |
17126
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
24 ## @deftypefnx {Function File} {} loglog (@var{hax}, @dots{}) |
10730
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{}) |
17126
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
26 ## Produce a 2-D plot using logarithmic scales for both axes. |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
27 ## |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
28 ## See the documentation of @code{plot} for a description of the arguments |
6895 | 29 ## that @code{loglog} will accept. |
14001
5f0bb45e615c
doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents:
13141
diff
changeset
|
30 ## |
17126
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
31 ## If the first argument @var{hax} is an axes handle, then plot into this axis, |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
32 ## rather than the current axes returned by @code{gca}. |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
17047
diff
changeset
|
33 ## |
14001
5f0bb45e615c
doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents:
13141
diff
changeset
|
34 ## The optional return value @var{h} is a graphics handle to the created plot. |
6895 | 35 ## @seealso{plot, semilogx, semilogy} |
3368 | 36 ## @end deftypefn |
4 | 37 |
2314 | 38 ## Author: jwe |
39 | |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
40 function h = loglog (varargin) |
4 | 41 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
42 [hax, varargin, nargs] = __plt_get_axis_arg__ ("loglog", varargin{:}); |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
43 |
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
44 if (nargs < 1) |
14846
460a3c6d8bf1
maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents:
14363
diff
changeset
|
45 print_usage (); |
10730
390d93e20531
Plot commands now print usage information without errors
Rik <octave@nomad.inbox5.com>
parents:
10511
diff
changeset
|
46 endif |
7216 | 47 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
48 oldfig = ifelse (isempty (hax), [], get (0, "currentfigure")); |
7207 | 49 unwind_protect |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
50 hax = newplot (hax); |
3063 | 51 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
52 set (hax, "xscale", "log", "yscale", "log"); |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
53 if (! ishold (hax)) |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
54 set (hax, "xminortick", "on", "yminortick", "on"); |
10511
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
55 endif |
4 | 56 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
57 htmp = __plt__ ("loglog", hax, varargin{:}); |
6302 | 58 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
59 unwind_protect_cleanup |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
60 if (! isempty (oldfig)) |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
61 set (0, "currentfigure", oldfig); |
7207 | 62 endif |
63 end_unwind_protect | |
4 | 64 |
17047
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
65 if (nargout > 0) |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
66 h = htmp; |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
67 endif |
4f5c70792bd6
loglog.m: Overhaul function to use new __plt_get_axis_arg__.
Rik <rik@octave.org>
parents:
14846
diff
changeset
|
68 |
4 | 69 endfunction |
10511
153e6226a669
loglog.m: Minor ticks on by default for loglog plots.
Ben Abbott <bpabbott@mac.com>
parents:
7216
diff
changeset
|
70 |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
71 |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
72 %!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
|
73 %! clf; |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
74 %! t = 1:0.01:10; |
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
75 %! x = sort ((t .* (1 + rand (size (t)))) .^ 2); |
14363
f3d52523cde1
Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents:
14245
diff
changeset
|
76 %! y = (t .* (1 + rand (size (t)))) .^ 2; |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
77 %! loglog (x, y); |
17198
df4c4b7708a4
Add titles and clean-up plotting %!demos.
Rik <rik@octave.org>
parents:
17126
diff
changeset
|
78 %! title ({'loglog() plot', 'Both axes are logarithmic'}); |
13090
7f127e079a7c
codesprint: demos for semilogx, semilogy, and loglog
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
79 |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
80 %!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
|
81 %! clf; |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
82 %! 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
|
83 %! b =-logspace (-5, 1, 10); |
13141
e81ddf9cacd5
maint: untabify and remove trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
13124
diff
changeset
|
84 %! |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
85 %! 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
|
86 %! loglog (a, b); |
14245
4506eade9f04
Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents:
14237
diff
changeset
|
87 %! xlabel ('loglog (a, b)'); |
13141
e81ddf9cacd5
maint: untabify and remove trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
13124
diff
changeset
|
88 %! |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
89 %! 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
|
90 %! loglog (a, abs (b)); |
14245
4506eade9f04
Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents:
14237
diff
changeset
|
91 %! set (gca, 'ydir', 'reverse'); |
4506eade9f04
Use Matlab coding conventions for demos in plot/ directory.
Rik <octave@nomad.inbox5.com>
parents:
14237
diff
changeset
|
92 %! xlabel ('loglog (a, abs (b))'); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
93 |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
94 %!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
|
95 %! hf = figure ("visible", "off"); |
13141
e81ddf9cacd5
maint: untabify and remove trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
13124
diff
changeset
|
96 %! unwind_protect |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
97 %! 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
|
98 %! b = logspace (-5, 1, 10); |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
99 %! loglog (a, b); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
100 %! 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
|
101 %! 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
|
102 %! unwind_protect_cleanup |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
103 %! close (hf); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
104 %! end_unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
105 |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
106 %!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
|
107 %! hf = figure ("visible", "off"); |
13141
e81ddf9cacd5
maint: untabify and remove trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
13124
diff
changeset
|
108 %! unwind_protect |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
109 %! 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
|
110 %! b =-logspace (-5, 1, 10); |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
111 %! loglog (a, b); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
112 %! axis tight; |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
113 %! 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
|
114 %! unwind_protect_cleanup |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
115 %! close (hf); |
13103
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
116 %! end_unwind_protect |
2e2738837a24
Add tests and demos for log-scale plotting functions
Carlo de Falco <kingcrimson@tiscali.it>
parents:
13090
diff
changeset
|
117 |