SUBROUTINE BOXES(MM, M, N, A, CLAB, RLAB, TITLE, XMIN, XMAX, NC, * IVAR, IERR, OUNIT) C C<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> C C PURPOSE C ------- C C PRODUCES A PLOT IN THE FORM OF A 3-DIMENSIONAL BOX OF THREE C OR MORE VARIABLES FOR EACH CASE. C C DESCRIPTION C ----------- C C 1. THE ORIGIN OF THE COORDINATE SYSTEM IS THE LOWER RIGHT CORNER C OF EACH BOX. THE VARIABLES APPEAR IN THE ORDER THEY ARE PLACED C IN THE IVAR ARRAY. FOR EXAMPLE, THE FIRST VARIABLE IN THE C X-DIRECTION WILL BE THE (1,1) ELEMENT OF THE ARRAY IVAR AND C WILL BE REPRESENTED ON THE BOX AS STARTING AT THE ORIGIN MOVING C TO THE LEFT UNTIL THE FIRST DIVIDER. THE SECOND VARIABLE WILL C BE THE (1,2) ELEMENT OF THE ARRAY IVAR AND WILL BE REPRESENTED C ON THE BOX AS STARTING AT THE FIRST DIVIDER AND MOVE LEFT UNTIL C THE NEXT DIVIDER, ETC. THE FIRST VARIABLE IN THE Y-DIRECTION C WILL BE THE (2,1) ELEMENT OF IVAR AND WILL BE REPRESENTED ON C THE BOX AS STARTING AT THE ORIGIN AND MOVING VERTICALLY UNTIL C THE FIRST DIVISION. THE FIRST VARIABLE IN THE Z-DIRECTION IS C THE (3,1) ELEMENT OF IVAR AND WILL BE REPRESENTED ON THE BOX AS C STARTING AT THE ORIGIN AND MOVING IN A DIAGONAL DIRECTION UNTIL C THE FIRST DIVISION. THE BOXES ARE DRAWN ON FORTRAN UNIT OUNIT. C C FOR EXAMPLE, IF VARIABLES 1 AND 2 ARE TO BE PLOTTED ON THE C X-AXIS, VARIABLES 3 AND 4 ON THE Y-AXIS, AND VARIABLE 5 ON THE C Z-AXIS, SET C C IVAR(1,1) = 1 IVAR(1,2) = 2 C IVAR(2,1) = 3 IVAR(2,2) = 4 C IVAR(3,1) = 5 C C AN OUTPUT BOX COULD LOOK LIKE THIS: C C ------------------------------- C / / /! C / / / ! C / / / ! C / / / ! C / / / ! C / / / ! C / / / /! C /-------------------/---------/ / ! C ! ! ! / ! C ! ! ! / ! C E! ! ! / ! C ! ! ! / / C ! ! !/ / C !-------------------!---------! /F C ! ! ! / C ! ! ! / C D! ! ! / C ! ! !/ C !-------------------!---------!A C C B C C WHERE A IS THE ORIGIN OF THE COORDINATE SYSTEM C B IS THE FIRST VARIABLE C C IS THE SECOND VARIABLE C D IS THE THIRD VARIABLE C E IS THE FOURTH VARIABLE C F IS THE FIFTH VARIABLE C C INPUT PARAMETERS C ---------------- C C MM INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE LEADING DIMENSION OF THE MATRIX A. MUST BE AT LEAST M. C C M INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE NUMBER OF CASES. C C N INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE NUMBER OF VARIABLES. C C A REAL MATRIX WHOSE FIRST DIMENSION MUST BE MM AND SECOND C DIMENSION MUST BE AT LEAST N (UNCHANGED ON OUTPUT). C THE DATA MATRIX. C C A(I,J) IS THE VALUE FOR THE J-TH VARIABLE FOR THE I-TH CASE. C C CLAB VECTOR OF 4-CHARACTER VARIABLES DIMENSIONED AT LEAST N C (UNCHANGED ON OUTPUT). C THE LABELS OF THE VARIABLES. C C RLAB VECTOR OF 4-CHARACTER VARIABLES DIMENSIONED AT LEAST M C (UNCHANGED ON OUTPUT). C THE LABELS OF THE CASES. C C TITLE 10-CHARACTER VARIABLE (UNCHANGED ON OUTPUT). C THE TITLE OF THE DATA SET. C C XMIN INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C XMIN(I) HOLDS THE MINIMUM VALUE TO BE PLOTTED FOR VARIABLE I. C C XMAX INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C XMAX(I) HOLDS THE MAXIMUM VALUE TO BE PLOTTED FOR VARIABLE I. C C IF XMIN(I) .GE. XMAX(I) ON INPUT, THEIR VALUES WILL BE C DETERMINED BY THE ROUTINE. C C NC INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C NC(I) HOLDS THE MAXIMUM NUMBER OF DIVISIONS FOR VARIABLE I. C C THE TOTAL NUMBER OF SIDE DIVISIONS FOR THE Y AND Z AXES C TOGETHER MUST BE NO GREATER THAN 20. AN ERROR WILL C OCCUR OTHERWISE. C C IVAR INTEGER MATRIX WHOSE FIRST DIMENSION MUST BE 3 AND WHOSE C SECOND DIMENSION MUST BE AT LEAST N (UNCHANGED ON OUTPUT). C THE FIRST ROW OF IVAR HOLDS THE VARIABLES TO BE PLOTTED ON THE C X-AXIS. THE SECOND AND THIRD ROWS HOLDS THE VARIABLES FOR C THE Y-AXIS AND THE Z-AXIS, RESPECTIVELY. C C OUNIT INTEGER SCALAR (UNCHANGED ON OUTPUT). C UNIT NUMBER FOR OUTPUT. C C OUTPUT PARAMETER C ---------------- C C IERR INTEGER SCALAR. C ERROR FLAG. C C IERR = 0, NO ERROR WAS DETECTED DURING EXECUTION C C IERR = 1, THE NUMBER OF SIDE DIVISIONS FOR THE Y- AND C Z-COORDINATES IS GREATER THAN 20. REDUCE THE C APPROPRIATE VALUES OF NC. C C REFERENCES C ---------- C C HARTIGAN, J. A. (1975). CLUSTERING ALGORITHMS, JOHN WILEY & C SONS, INC., NEW YORK. PAGES 39, 56-57. C C HARTIGAN, J. A. (1975) PRINTER GRAPHICS FOR CLUSTERING. JOURNAL OF C STATISTICAL COMPUTATION AND SIMULATION. VOLUME 4,PAGES 187-213. C C<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> C