Mercurial > octave
annotate scripts/testfun/private/dump_demos.m @ 30893:e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
* accumarray.m, accumdim.m, quadl.m, quadv.m, randi.m, structfun.m,
__is_function__.m, uigetfile.m, uimenu.m, uiputfile.m, doc_cache_create.m,
colorspace_conversion_input_check.m, imageIO.m, argnames.m, vectorize.m,
vectorize.m, normest1.m, inputname.m, nthargout.m, display_info_file.m,
decic.m, ode15i.m, ode15s.m, ode23.m, ode23s.m, ode45.m, odeset.m,
check_default_input.m, integrate_adaptive.m, ode_event_handler.m,
runge_kutta_23.m, runge_kutta_23s.m, runge_kutta_45_dorpri.m,
runge_kutta_interpolate.m, starting_stepsize.m, __all_opts__.m, fminbnd.m,
fminsearch.m, fminunc.m, fsolve.m, fzero.m, sqp.m, fplot.m, plotyy.m,
__bar__.m, __ezplot__.m, flat_entry.html, profexport.m, movfun.m, bicg.m,
bicgstab.m, cgs.m, eigs.m, gmres.m, pcg.m, __alltohandles__.m, __sprand__.m,
qmr.m, tfqmr.m, dump_demos.m:
Replace "func", "fun", "fn" in documentation and variable names with "fcn".
author | Rik <rik@octave.org> |
---|---|
date | Mon, 04 Apr 2022 18:14:56 -0700 |
parents | 796f54d4ddbf |
children | 597f3ee61a48 |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 ######################################################################## |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 ## |
30564
796f54d4ddbf
update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
30236
diff
changeset
|
3 ## Copyright (C) 2010-2022 The Octave Project Developers |
27918
b442ec6dda5c
use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents:
26584
diff
changeset
|
4 ## |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 ## See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 ## distribution or <https://octave.org/copyright/>. |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
7 ## |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
8 ## This file is part of Octave. |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
9 ## |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
10 ## Octave is free software: you can redistribute it and/or modify it |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
11 ## under the terms of the GNU General Public License as published by |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
12 ## the Free Software Foundation, either version 3 of the License, or |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22338
diff
changeset
|
13 ## (at your option) any later version. |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
14 ## |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
15 ## Octave is distributed in the hope that it will be useful, but |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
16 ## WITHOUT ANY WARRANTY; without even the implied warranty of |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22338
diff
changeset
|
17 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22338
diff
changeset
|
18 ## GNU General Public License for more details. |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
19 ## |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
20 ## You should have received a copy of the GNU General Public License |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
21 ## along with Octave; see the file COPYING. If not, see |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
22 ## <https://www.gnu.org/licenses/>. |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 ## |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 ######################################################################## |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
25 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
26 ## -*- texinfo -*- |
22262
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
27 ## @deftypefn {} {} dump_demos () |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
28 ## @deftypefnx {} {} dump_demos (@var{dirs}) |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
29 ## @deftypefnx {} {} dump_demos (@var{dirs}, @var{mfile}) |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
30 ## @deftypefnx {} {} dump_demos (@var{dirs}, @var{mfile}, @var{fmt}) |
18895 | 31 ## Produce a script, with the name specified by @var{mfile}, containing |
32 ## the demos in the directories, @var{dirs}. The demos are assumed to produce | |
33 ## graphical output, whose renderings are saved with the specified format, | |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
34 ## @var{fmt}. |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
35 ## |
22262
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
36 ## The defaults for each input are; |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
37 ## |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
38 ## @table @var |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
39 ## @item @var{dirs} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
40 ## @code{@{"plot/appearance", "plot/draw", "plot/util", "image"@}} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
41 ## |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
42 ## @item @var{mfile} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
43 ## @qcode{"dump.m"} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
44 ## |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
45 ## @item @var{fmt} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
46 ## @qcode{"png"} |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
47 ## @end table |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
48 ## |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
49 ## For example, to produce PNG output for all demos of the functions |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
50 ## in the plot directory; |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
51 ## |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
52 ## @example |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
53 ## dump_demos plot dump.m png |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
54 ## @end example |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
55 ## @seealso{fntests, test, demo} |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
56 ## @end deftypefn |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
57 |
22765
01aae08a0105
maint: Rename variables to match documentation in m-files.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
58 function dump_demos (dirs={"plot/appearance", "plot/draw", "plot/util", "image"}, mfile="dump_plot_demos.m", fmt="png") |
18875
0075f3fba930
dump_demos.m: Update to match new plot directory structure
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18874
diff
changeset
|
59 |
18895 | 60 if (ischar (dirs)) |
61 dirs = {dirs}; | |
62 elseif (! iscellstr (dirs)) | |
63 error ("dump_demos: DIRS must be a cell array of strings with directory names"); | |
64 endif | |
65 | |
22262
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
66 if (! isunix ()) |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
67 dirs = strrep (dirs, "/", filesep ()); |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
68 endif |
a41c83fc601b
dump_demos.m: Backout a8a9c275e12d and fix filesep on non-unix
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22220
diff
changeset
|
69 |
22765
01aae08a0105
maint: Rename variables to match documentation in m-files.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
70 [~, funcname, ext] = fileparts (mfile); |
18895 | 71 if (isempty (ext)) |
22765
01aae08a0105
maint: Rename variables to match documentation in m-files.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
72 mfile = [mfile ".m"]; |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
73 endif |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
74 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
75 ## Create script beginning (close figures, etc.) |
22765
01aae08a0105
maint: Rename variables to match documentation in m-files.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
76 fid = fopen (mfile, "w"); |
18875
0075f3fba930
dump_demos.m: Update to match new plot directory structure
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18874
diff
changeset
|
77 fprintf (fid, "%% DO NOT EDIT! Generated automatically by dump_demos.m\n"); |
18895 | 78 fprintf (fid, "function %s ()\n", funcname); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
79 fprintf (fid, "set (0, 'DefaultAxesColorOrder', ...\n"); |
26571
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
80 fprintf (fid, " [ 0.00000 0.44700 0.74100 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
81 fprintf (fid, " 0.85000 0.32500 0.09800 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
82 fprintf (fid, " 0.92900 0.69400 0.12500 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
83 fprintf (fid, " 0.49400 0.18400 0.55600 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
84 fprintf (fid, " 0.46600 0.67400 0.18800 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
85 fprintf (fid, " 0.30100 0.74500 0.93300 ;\n"); |
16f18b0ef642
dump_demos.m: Use Octave's new ColorOrder for demos (bug #55400).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
86 fprintf (fid, " 0.63500 0.07800 0.18400 ]);\n"); |
26582
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
87 fprintf (fid, "set (0, 'DefaultFigureColorMap', ...\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
88 fprintf (fid, " [ 0.2670040 0.0048743 0.3294152 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
89 fprintf (fid, " 0.2726517 0.0258457 0.3533673 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
90 fprintf (fid, " 0.2771063 0.0509139 0.3762361 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
91 fprintf (fid, " 0.2803562 0.0742015 0.3979015 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
92 fprintf (fid, " 0.2823900 0.0959536 0.4182508 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
93 fprintf (fid, " 0.2832046 0.1168933 0.4371789 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
94 fprintf (fid, " 0.2828093 0.1373502 0.4545959 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
95 fprintf (fid, " 0.2812308 0.1574799 0.4704339 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
96 fprintf (fid, " 0.2785162 0.1773480 0.4846539 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
97 fprintf (fid, " 0.2747355 0.1969692 0.4972505 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
98 fprintf (fid, " 0.2699818 0.2163303 0.5082545 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
99 fprintf (fid, " 0.2643686 0.2354047 0.5177319 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
100 fprintf (fid, " 0.2580262 0.2541617 0.5257802 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
101 fprintf (fid, " 0.2510987 0.2725732 0.5325222 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
102 fprintf (fid, " 0.2437329 0.2906195 0.5380971 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
103 fprintf (fid, " 0.2360733 0.3082910 0.5426518 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
104 fprintf (fid, " 0.2282632 0.3255865 0.5463354 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
105 fprintf (fid, " 0.2204250 0.3425172 0.5492871 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
106 fprintf (fid, " 0.2126666 0.3591022 0.5516350 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
107 fprintf (fid, " 0.2050791 0.3753661 0.5534932 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
108 fprintf (fid, " 0.1977219 0.3913409 0.5549535 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
109 fprintf (fid, " 0.1906314 0.4070615 0.5560891 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
110 fprintf (fid, " 0.1838194 0.4225638 0.5569522 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
111 fprintf (fid, " 0.1772724 0.4378855 0.5575761 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
112 fprintf (fid, " 0.1709575 0.4530630 0.5579740 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
113 fprintf (fid, " 0.1648329 0.4681295 0.5581427 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
114 fprintf (fid, " 0.1588454 0.4831171 0.5580587 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
115 fprintf (fid, " 0.1529512 0.4980530 0.5576847 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
116 fprintf (fid, " 0.1471316 0.5129595 0.5569733 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
117 fprintf (fid, " 0.1414022 0.5278543 0.5558645 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
118 fprintf (fid, " 0.1358330 0.5427501 0.5542887 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
119 fprintf (fid, " 0.1305821 0.5576525 0.5521757 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
120 fprintf (fid, " 0.1258984 0.5725631 0.5494454 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
121 fprintf (fid, " 0.1221631 0.5874763 0.5460234 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
122 fprintf (fid, " 0.1198724 0.6023824 0.5418306 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
123 fprintf (fid, " 0.1196266 0.6172658 0.5367956 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
124 fprintf (fid, " 0.1220459 0.6321070 0.5308480 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
125 fprintf (fid, " 0.1276677 0.6468818 0.5239242 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
126 fprintf (fid, " 0.1368349 0.6615629 0.5159668 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
127 fprintf (fid, " 0.1496433 0.6761197 0.5069243 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
128 fprintf (fid, " 0.1659673 0.6905190 0.4967519 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
129 fprintf (fid, " 0.1855384 0.7047252 0.4854121 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
130 fprintf (fid, " 0.2080305 0.7187010 0.4728733 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
131 fprintf (fid, " 0.2331273 0.7324064 0.4591059 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
132 fprintf (fid, " 0.2605315 0.7458020 0.4440959 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
133 fprintf (fid, " 0.2900007 0.7588465 0.4278259 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
134 fprintf (fid, " 0.3213300 0.7714979 0.4102927 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
135 fprintf (fid, " 0.3543553 0.7837140 0.3914876 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
136 fprintf (fid, " 0.3889303 0.7954531 0.3714207 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
137 fprintf (fid, " 0.4249331 0.8066739 0.3500988 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
138 fprintf (fid, " 0.4622468 0.8173376 0.3275447 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
139 fprintf (fid, " 0.5007536 0.8274091 0.3037990 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
140 fprintf (fid, " 0.5403370 0.8368582 0.2789167 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
141 fprintf (fid, " 0.5808612 0.8456634 0.2530009 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
142 fprintf (fid, " 0.6221708 0.8538156 0.2262237 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
143 fprintf (fid, " 0.6640873 0.8613210 0.1988794 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
144 fprintf (fid, " 0.7064038 0.8682063 0.1714949 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
145 fprintf (fid, " 0.7488853 0.8745222 0.1450376 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
146 fprintf (fid, " 0.7912731 0.8803462 0.1212910 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
147 fprintf (fid, " 0.8333021 0.8857801 0.1033262 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
148 fprintf (fid, " 0.8747175 0.8909453 0.0953508 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
149 fprintf (fid, " 0.9152963 0.8959735 0.1004700 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
150 fprintf (fid, " 0.9548396 0.9010058 0.1178764 ;\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
151 fprintf (fid, " 0.9932479 0.9061566 0.1439362 ]);\n"); |
2ae2dcf0f4d5
dump_demos.m: Use viridis colormap by default.
Rik <rik@octave.org>
parents:
26571
diff
changeset
|
152 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
153 fprintf (fid, "close all\n"); |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
154 fprintf (fid, "more off\n"); |
18925
87324260043d
Improve plot comparison scripts.
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18897
diff
changeset
|
155 fprintf (fid, "diary diary.log\n"); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
156 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
157 ## Run and print the demos in each directory |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
158 for i = 1:numel (dirs) |
18895 | 159 d = dirs{i}; |
160 if (! is_absolute_filename (d)) | |
161 d = dir_in_loadpath (d); | |
18875
0075f3fba930
dump_demos.m: Update to match new plot directory structure
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18874
diff
changeset
|
162 endif |
25787
3293cd2651fb
prefer 'isfolder' over 'exist (..., "dir")' in Octave functions
Mike Miller <mtmiller@octave.org>
parents:
25054
diff
changeset
|
163 if (! isfolder (d)) |
18895 | 164 error ("dump_demos: directory %s does not exist", d); |
18875
0075f3fba930
dump_demos.m: Update to match new plot directory structure
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18874
diff
changeset
|
165 endif |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
166 dump_all_demos (d, fid, fmt); |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
167 endfor |
18875
0075f3fba930
dump_demos.m: Update to match new plot directory structure
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18874
diff
changeset
|
168 |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
169 ## Add helper functions like sombrero |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
170 dump_helper_fcns (fid); |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
171 |
18925
87324260043d
Improve plot comparison scripts.
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18897
diff
changeset
|
172 ## Stop and flush diary |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
173 fprintf (fid, "\ndiary off\n"); |
18925
87324260043d
Improve plot comparison scripts.
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18897
diff
changeset
|
174 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
175 ## Create script ending |
22302
1c4cd12987f5
Use Octave syntax in graphics demos.
Rik <rik@octave.org>
parents:
22262
diff
changeset
|
176 fprintf (fid, "end\n\n"); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
177 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
178 ## Close script |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
179 fclose (fid); |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
180 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
181 endfunction |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
182 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
183 function dump_all_demos (directory, fid, fmt) |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
184 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
185 dirinfo = dir (fullfile (directory, "*.m")); |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
186 flist = {dirinfo.name}; |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
187 ## Remove uigetdir, uigetfile, uiputfile, etc. |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
188 flist = flist(! strncmp (flist, "ui", 2)); |
18895 | 189 ## Remove linkaxes, linkprops |
190 flist = flist(! strncmp (flist, "link", 4)); | |
191 ## Remove colormap | |
192 flist = flist(! strncmp (flist, "colormap", 8)); | |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
193 for i = 1:numel (flist) |
18895 | 194 fcn = flist{i}; |
195 fcn(end-1:end) = []; # remove .m | |
196 demos = get_demos (fcn); | |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
197 for d = 1:numel (demos) |
18895 | 198 idx = sprintf ("%02d", d); |
30893
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
199 base_fcn = sprintf ("%s_%s", fcn, idx); |
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
200 fn = sprintf ('%s.%s', base_fcn, fmt); |
22126
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
201 ## Wrap each demo in a function which create a local scope |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
202 ## to prevent that a previous demo overwrites i or pi, for example |
30893
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
203 fprintf (fid, "\nfunction %s ()\n", base_fcn); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
204 fprintf (fid, " %s\n\n", demos{d}); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
205 fprintf (fid, "end\n\n"); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
206 |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
207 fprintf (fid, "try\n"); |
18959
4c45986a278e
dump_demos.m: Check if file exists before demo and add timing.
Andreas Weber <andy.weber.aw@gmail.com>
parents:
18925
diff
changeset
|
208 ## First check if the file already exists, skip demo if found |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
209 fprintf (fid, " if (~ exist ('%s', 'file'))\n", fn); |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19152
diff
changeset
|
210 ## Invoke the ancient, deprecated random seed generators, but there is an |
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19152
diff
changeset
|
211 ## initialization mismatch with the more modern generators reported |
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19152
diff
changeset
|
212 ## here (https://savannah.gnu.org/bugs/?42557). |
22126
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
213 fprintf (fid, " rand ('seed', 1);\n"); |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
214 fprintf (fid, " tic ();\n"); |
30893
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
215 fprintf (fid, " %s ();\n", base_fcn); |
22126
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
216 fprintf (fid, " t_plot = toc ();\n"); |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
217 fprintf (fid, " fig = (get (0, 'currentfigure'));\n"); |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
218 fprintf (fid, " if (~ isempty (fig))\n"); |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
219 fprintf (fid, " figure (fig);\n"); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
220 fprintf (fid, " fprintf ('Printing ""%s"" ... ');\n", fn); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
221 fprintf (fid, " tic ();\n"); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
222 fprintf (fid, " print ('-d%s', '%s');\n", fmt, fn); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
223 fprintf (fid, " t_print = toc ();\n"); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
224 fprintf (fid, " fprintf ('[%%f %%f] done\\n',t_plot, t_print);\n"); |
22126
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
225 fprintf (fid, " end\n"); |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
226 ## Temporary fix for cruft accumulating in figure window. |
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
227 fprintf (fid, " close ('all');\n"); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
228 fprintf (fid, " else\n"); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
229 fprintf (fid, " fprintf ('File ""%s"" already exists.\\n');\n", fn); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
230 fprintf (fid, " end\n"); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
231 fprintf (fid, "catch\n"); |
30893
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
232 fprintf (fid, " fprintf ('ERROR in %s: %%s\\n', lasterr ());\n", base_fcn); |
e1788b1a315f
maint: Use "fcn" as preferred abbreviation for "function" in m-files.
Rik <rik@octave.org>
parents:
30564
diff
changeset
|
233 fprintf (fid, " err_fid = fopen ('%s.err', 'w');\n", base_fcn); |
22311
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
234 fprintf (fid, " fprintf (err_fid, '%%s', lasterr ());\n"); |
ee54a83a89ad
dump_demos.m: Move demo outside try/catch and ctrl block (Matlab comp.)
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22310
diff
changeset
|
235 fprintf (fid, " fclose (err_fid);\n"); |
22126
3f8ed6d7cb1c
Improve plot comparison in sripts/testfun
Andreas Weber <andy.weber.aw@gmail.com>
parents:
21758
diff
changeset
|
236 fprintf (fid, "end\n"); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
237 endfor |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
238 endfor |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
239 fprintf (fid, "\nclose all\n"); |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
240 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
241 endfunction |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
242 |
18895 | 243 function retval = get_demos (fcn) |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
244 |
18895 | 245 [code, idx] = test (fcn, "grabdemo"); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
246 num_demos = length (idx) - 1; |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
247 retval = cell (1, num_demos); |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
248 ## Now split the demos into a cell array |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
249 for k = 1:num_demos |
18895 | 250 retval{k} = oct2mat (code(idx(k):idx(k+1)-1)); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
251 endfor |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
252 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
253 endfunction |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
254 |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
255 function code = oct2mat (code) |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
256 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
257 ## Simple hacks to make things Matlab compatible |
22302
1c4cd12987f5
Use Octave syntax in graphics demos.
Rik <rik@octave.org>
parents:
22262
diff
changeset
|
258 code = strrep (code, "%!", "%%"); # system operator ! |
1c4cd12987f5
Use Octave syntax in graphics demos.
Rik <rik@octave.org>
parents:
22262
diff
changeset
|
259 code = strrep (code, "!", "~"); # logical not operator |
22189
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
260 |
18895 | 261 ## Simply replacing double quotes with single quotes |
22189
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
262 ## causes problems with strings like 'hello "world"' or transpose. |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
263 |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
264 ## Test input for double quote replacement: |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
265 ## title ("bar"); |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
266 ## a' |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
267 ## foo 'bar' "baz" |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
268 ## image (repmat ((1:64)', 1, 64)); |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
269 ## fprintf ('File "brighten_01.png" already exists.\n'); |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
270 ## title ({'x^2 + y^2'; 'plotted over circular disk with "circ"'}); |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
271 ## annotation ('textbox', [0.1 0 0.8 1], 'string', ... |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
272 ## '"headstyle" property:', ... |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
273 |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
274 code = regexprep (code, "[(,;\n][ ]*'[^']*'(*SKIP)(*F)|\"", "'", |
18895 | 275 "lineanchors", "dotexceptnewline"); |
22189
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
276 |
22316
b67a29a96056
dump_demos.m: Replace # not inside single quotes
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22314
diff
changeset
|
277 ## replace # not inside single quotes |
b67a29a96056
dump_demos.m: Replace # not inside single quotes
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22314
diff
changeset
|
278 code = regexprep (code, "[(,;\n][ ]*'[^']*'(*SKIP)(*F)|#", "%"); |
22313
7cd75d61bbae
dump_demos.m: Handle in-place operators like += for Matlab.
Rik <rik@octave.org>
parents:
22311
diff
changeset
|
279 |
22302
1c4cd12987f5
Use Octave syntax in graphics demos.
Rik <rik@octave.org>
parents:
22262
diff
changeset
|
280 ## Shorten all long forms of endXXX to 'end' |
18895 | 281 endkeywords = {"endfor", "endfunction", "endif", "endwhile", "end_try_catch"}; |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
282 for k = 1:numel (endkeywords) |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
283 code = strrep (code, endkeywords{k}, "end"); |
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
284 endfor |
22302
1c4cd12987f5
Use Octave syntax in graphics demos.
Rik <rik@octave.org>
parents:
22262
diff
changeset
|
285 ## Comment keywords unknown to Matlab |
18895 | 286 commentkeywords = {"unwind_protect", "end_unwind_protect"}; |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
287 for k = 1:numel (commentkeywords) |
18895 | 288 code = strrep (code, commentkeywords{k}, ["%" commentkeywords{k}]); |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
289 endfor |
22313
7cd75d61bbae
dump_demos.m: Handle in-place operators like += for Matlab.
Rik <rik@octave.org>
parents:
22311
diff
changeset
|
290 ## Fix in-place operators |
7cd75d61bbae
dump_demos.m: Handle in-place operators like += for Matlab.
Rik <rik@octave.org>
parents:
22311
diff
changeset
|
291 code = regexprep (code, '(\S+)(\s*)(.?[+-/*])=', '$1 = $1 $3'); |
22318
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
292 ## Fix x = y = z = XXX assignment |
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
293 code = regexprep (code, '^\s*([^=\s]+)\s*=\s*([^=\s]+)\s*=\s*([^=\s]+)\s*=\s*([^=\n]+)$', ... |
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
294 "$1 = $4\n$2 = $4\n$3 = $4", "lineanchors"); |
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
295 ## Fix x = y = XXX assignment |
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
296 code = regexprep (code, '^\s*([^=\s]+)\s*=\s*([^=\s]+)\s*=\s*([^=\n]+)$', ... |
0e8c36397197
dump_demos.m: Replace 'x = y = XXX' and 'x = y = z = XXX' assignments.
Rik <rik@octave.org>
parents:
22316
diff
changeset
|
297 "$1 = $3\n$2 = $3", "lineanchors"); |
18895 | 298 |
18874
c74673161752
Add scripts to help validate plot results.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
299 endfunction |
18895 | 300 |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
301 function dump_helper_fcns (fid) |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
302 |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
303 fprintf (fid, "\n%s\n", repmat ("%", [1, 60])); |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
304 fdisp (fid, "% Helper functions"); |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
305 fprintf (fid, "%s\n", repmat ("%", [1, 60])); |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
306 |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
307 ## Add sombrero function |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
308 fdisp (fid, [ |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
309 "function [x, y, z] = sombrero (n) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
310 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
311 " if (nargin == 0) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
312 " n = 41; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
313 " end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
314 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
315 " [xx, yy] = meshgrid (linspace (-8, 8, n)); " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
316 " r = sqrt (xx.^2 + yy.^2) + eps; % eps prevents div/0 errors " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
317 " zz = sin (r) ./ r; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
318 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
319 " if (nargout == 0) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
320 " surf (xx, yy, zz); " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
321 " elseif (nargout == 1) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
322 " x = zz; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
323 " else " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
324 " x = xx; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
325 " y = yy; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
326 " z = zz; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
327 " end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
328 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
329 "end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
330 ]); # End of sombrero dump |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
331 |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
332 fprintf (fid, "\n"); |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
333 |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
334 ## Add rgbplot function |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
335 fdisp (fid, [ |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
336 "function h = rgbplot (cmap, style) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
337 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
338 " if (nargin == 1) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
339 " style = 'profile'; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
340 " end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
341 " " |
30236
628f26e122d9
maint: use rows() or columns() instead of size(__, 1 | 2) for clarity.
Rik <rik@octave.org>
parents:
29359
diff
changeset
|
342 " idx = 1:rows (cmap); " |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
343 " switch (lower (style)) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
344 " case 'profile' " |
22338
e318739b0edd
dump_demos.m: Make rgbplot Matlab compatible
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22323
diff
changeset
|
345 " htmp = plot (idx, cmap(:,1), 'r', ... " |
e318739b0edd
dump_demos.m: Make rgbplot Matlab compatible
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22323
diff
changeset
|
346 " idx, cmap(:,2), 'g', ... " |
e318739b0edd
dump_demos.m: Make rgbplot Matlab compatible
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22323
diff
changeset
|
347 " idx, cmap(:,3), 'b'); " |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
348 " set (gca (), 'ytick', 0:0.1:1); " |
30236
628f26e122d9
maint: use rows() or columns() instead of size(__, 1 | 2) for clarity.
Rik <rik@octave.org>
parents:
29359
diff
changeset
|
349 " set (gca (), 'xlim', [0 rows(cmap)]); " |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
350 " case 'composite' " |
22338
e318739b0edd
dump_demos.m: Make rgbplot Matlab compatible
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22323
diff
changeset
|
351 " htmp = image (idx); " |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
352 " set (gca, 'ytick', []); " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
353 " colormap (cmap); " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
354 " end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
355 " xlabel ('color index'); " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
356 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
357 " if (nargout > 0) " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
358 " h = htmp; " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
359 " end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
360 " " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
361 "end " |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
362 ]); # End of rgbplot dump |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
363 |
22189
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
364 fprintf (fid, "\n"); |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
365 |
829e0aafebdc
dump_demos.m: Change regex for replacement of double quotes, add dummy assert
Andreas Weber <andy.weber.aw@gmail.com>
parents:
22151
diff
changeset
|
366 fprintf (fid, "\n%s\n", repmat ("%", [1, 60])); |
22151
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
367 |
283d8dfcad37
Make demos Matlab compatible for comparison with dump_demos script.
Rik <rik@octave.org>
parents:
22126
diff
changeset
|
368 endfunction |