annotate scripts/plot/subwindow.m @ 2311:2b5788792cad

[project @ 1996-07-11 20:18:38 by jwe]
author jwe
date Thu, 11 Jul 1996 20:18:38 +0000
parents 5cffc4b8de57
children 204cc7db6f4a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
1 ### Copyright (C) 1996 John W. Eaton
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
2 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
3 ### This file is part of Octave.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
4 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
5 ### Octave is free software; you can redistribute it and/or modify it
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
6 ### under the terms of the GNU General Public License as published by
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
7 ### the Free Software Foundation; either version 2, or (at your option)
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
8 ### any later version.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
9 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
10 ### Octave is distributed in the hope that it will be useful, but
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
11 ### WITHOUT ANY WARRANTY; without even the implied warranty of
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
12 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
13 ### General Public License for more details.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
14 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
15 ### You should have received a copy of the GNU General Public License
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
16 ### along with Octave; see the file COPYING. If not, write to the Free
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
17 ### Software Foundation, 59 Temple Place - Suite 330, Boston, MA
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
18 ### 02111-1307, USA.
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
19
2311
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
20 ## usage: subwindow (xn, yn)
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
21 ##
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
22 ## NOTE: this will work only with gnuplot installed with
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
23 ## multiplot patch
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
24 ##
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
25 ## Sets subwindow position in multiplot mode for next plot. The
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
26 ## multiplot mode has to be previously initialized using multiplot()
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
27 ## command, else this command just becomes an aliad to multiplot()
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
28
2311
2b5788792cad [project @ 1996-07-11 20:18:38 by jwe]
jwe
parents: 2303
diff changeset
29 function subwindow (xn, yn)
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
30
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
31 ## Written by Vinayak Dutt, Dutt.Vinayak@mayo.EDU 3 Jul 95
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
32
2296
5f6c19054139 [project @ 1996-06-14 06:41:57 by jwe]
jwe
parents: 1887
diff changeset
33 if (! gnuplot_has_multiplot)
5f6c19054139 [project @ 1996-06-14 06:41:57 by jwe]
jwe
parents: 1887
diff changeset
34 error ("subwindow: gnuplot does not appear to support this feature");
5f6c19054139 [project @ 1996-06-14 06:41:57 by jwe]
jwe
parents: 1887
diff changeset
35 endif
5f6c19054139 [project @ 1996-06-14 06:41:57 by jwe]
jwe
parents: 1887
diff changeset
36
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
37 ## global variables to keep track of multiplot options
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
38
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
39 global multiplot_mode
1541
47bd45a30dda [project @ 1995-10-06 03:40:11 by jwe]
jwe
parents: 1540
diff changeset
40 global multiplot_xsize multiplot_ysize
47bd45a30dda [project @ 1995-10-06 03:40:11 by jwe]
jwe
parents: 1540
diff changeset
41 global multiplot_xn multiplot_yn
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
42
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
43 ## check calling argument count
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
44
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
45 if (nargin != 2)
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
46 usage ("subwindow (xn, yn)");
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
47 endif
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
48
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
49 ## check for scalar inputs
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
50
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
51 if (! (is_scalar (xn) && is_scalar (yn)))
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
52 error ("subwindow: xn and yn have to be scalars");
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
53 endif
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
54
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
55 xn = round (xn);
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
56 yn = round (yn);
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
57
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
58 ## switch to multiplot mode if not already in, and use the args as the
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
59 ## args to multiplot()
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
60
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
61 if (multiplot_mode != 1)
1557
c694fe5956e3 [project @ 1995-10-12 00:32:20 by jwe]
jwe
parents: 1541
diff changeset
62 multiplot (xn, yn);
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
63 return;
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
64 endif
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
65
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 2296
diff changeset
66 ## get the sub plot location
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
67
1541
47bd45a30dda [project @ 1995-10-06 03:40:11 by jwe]
jwe
parents: 1540
diff changeset
68 if (xn < 1 || xn > multiplot_xn || yn < 1 || yn > multiplot_yn)
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
69 error ("subwindow: incorrect xn and yn");
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
70 endif
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
71
1541
47bd45a30dda [project @ 1995-10-06 03:40:11 by jwe]
jwe
parents: 1540
diff changeset
72 xo = (xn - 1.0)*multiplot_xsize;
47bd45a30dda [project @ 1995-10-06 03:40:11 by jwe]
jwe
parents: 1540
diff changeset
73 yo = (multiplot_yn - yn)*multiplot_ysize;
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
74
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
75 eval (sprintf ("set origin %g, %g", xo, yo));
2296
5f6c19054139 [project @ 1996-06-14 06:41:57 by jwe]
jwe
parents: 1887
diff changeset
76
1540
749b8b19733f [project @ 1995-10-06 03:10:34 by jwe]
jwe
parents:
diff changeset
77 endfunction