home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_progs / libs / matlab.lzh / MATLAB / MATLAB.LZH / Source / Plot / SETAXS.FOR < prev    next >
Encoding:
Text File  |  1991-04-13  |  2.8 KB  |  110 lines

  1.       SUBROUTINE SETAXS (ICURS, IPLTP1, ISYOPT, ISECY, SYMN, SYMX,
  2.      .                   XLO, YLO)
  3.       IMPLICIT NONE
  4. C
  5. C ***      SET AXIS TYPES
  6. C
  7.       CHARACTER*(*) ICURS
  8.       INTEGER IPLTP1, ISYOPT
  9.       LOGICAL ISECY
  10.       REAL SYMN, SYMX, XLO, YLO
  11. C
  12.       INCLUDE MATLAB$KOM:IOP.KOM
  13.       INCLUDE MATLAB$KOM:MATPLT.KOM
  14. C
  15.       INTEGER IANS
  16. C
  17. C
  18. 180   CONTINUE
  19.       CALL CHKEND
  20.       CALL DSSTRN (' PLEASE CHOOSE THE TYPE OF PLOT AXES', 1)
  21.       CALL DSSTRN (' [1] LIN-LIN PLOT', 1)
  22.       CALL DSSTRN (' [2] LOG-LIN PLOT', 1)
  23.       CALL DSSTRN (' [3] LIN-LOG PLOT', 1)
  24.       CALL DSSTRN (' [4] LOG-LOG PLOT', 1)
  25.       CALL DSSTRN (' [5] USE SECOND Y-AXIS', 1)
  26.       CALL DSSTRN (' [6] RETURN TO PREVIOUS MENU', 1)
  27.       CALL DSCURS (ICURS)
  28.       CALL VALGET (0, IANS, 'I')
  29.       GO TO (210, 220, 230, 240, 250, 999), IANS
  30.       CALL MENUER (6)
  31.       GO TO 180
  32. C
  33. 210   CONTINUE
  34.       IPLTP1 = 0
  35.       GO TO 180
  36. C
  37. 220   CONTINUE
  38.       IF (XLO.LT.0) THEN
  39.         CALL DSERR ('ERROR. X-AXIS LIST HAS VALUES LESS THAN 0.')
  40.         CALL DSERR ('THIS IS INCOMPATIBLE WITH A LOG X AXIS')
  41.         GO TO 180
  42.       ENDIF
  43.       IPLTP1 = 1
  44.       GO TO 180
  45. C
  46. 230   CONTINUE
  47.       IF (YLO.LT.0) THEN
  48.         CALL DSERR ('ERROR. Y-AXIS LIST HAS VALUES LESS THAN 0.')
  49.         CALL DSERR ('THIS IS INCOMPATIBLE WITH A LOG Y AXIS')
  50.         GO TO 180
  51.       ENDIF
  52.       IPLTP1 = 2
  53.       GO TO 180
  54. C
  55. 240   CONTINUE
  56.       IF (XLO.LT.0) THEN
  57.         CALL DSERR ('ERROR. X-AXIS LIST HAS VALUES LESS THAN 0.')
  58.         CALL DSERR ('THIS IS INCOMPATIBLE WITH A LOG X AXIS')
  59.         GO TO 180
  60.       ENDIF
  61.       IF (YLO.LT.0) THEN
  62.         CALL DSERR ('ERROR. Y-AXIS LIST HAS VALUES LESS THAN 0.')
  63.         CALL DSERR ('THIS IS INCOMPATIBLE WITH A LOG Y AXIS')
  64.         GO TO 180
  65.       ENDIF
  66.       IPLTP1 = 3
  67.       GO TO 180
  68. C
  69. 250   CONTINUE
  70.       ISECY = .TRUE.
  71. 252   CONTINUE
  72.       CALL CHKEND
  73.       CALL DSSTRN (' PLEASE CHOOSE SECOND Y-AXIS OPTIONS:', 1)
  74.       CALL DSSTRN (' [1] LINEAR SCALE', 1)
  75.       CALL DSSTRN (' [2] LOG SCALE', 1)
  76.       CALL DSSTRN (' [3] CHOOSE SECOND AXIS LIMITS', 1)
  77.       CALL DSSTRN (' [4] DELETE SECOND Y AXIS', 1)
  78.       CALL DSSTRN (' [5] RETURN TO AXIS SELECTION MENU', 1)
  79.       CALL DSCURS (ICURS)
  80.       CALL VALGET (0, IANS, 'I')
  81.       GO TO (260, 270, 290, 280, 180), IANS
  82.       CALL MENUER (5)
  83. C
  84. 260   CONTINUE
  85.       ISYOPT = 0
  86.       GO TO 252
  87. C
  88. 270   CONTINUE
  89.       ISYOPT = 2
  90.       GO TO 252
  91. C
  92. 280   CONTINUE
  93.       ISECY = .FALSE.
  94.       GO TO 252
  95. C
  96. 290   CONTINUE
  97.       CALL DSSTRN (
  98.      .    ' ENTER THE MINIMUM SCALE VALUE OF THE SECOND Y AXIS', 1)
  99.       CALL DSCURS (ICURS)
  100.       CALL VALGET (SYMN, 0, 'F')
  101.       CALL DSSTRN (
  102.      .    ' ENTER THE MAXIMUM SCALE VALUE OF THE SECOND Y AXIS', 1)
  103.       CALL DSCURS (ICURS)
  104.       CALL VALGET (SYMX, 0, 'F')
  105.       GO TO 252
  106. C
  107. 999   CONTINUE
  108.       RETURN
  109.       END
  110.