C******************** START FILE DPLOT1.FOR ; GROUP DPLOTT *************
C------------------------------------------------------
C  DPLOT1
C
C	TEKTRONIX GRAPHICS ROUTINE
C
      SUBROUTINE DPLOT1(X,Y,N,M)
C	XXXXX  VERSION  10/05/76    XXXXXX
C    VAX VERSION REV MAY 1982 D. MC CUNE
C
C	THIS PROGRAM GENERATES A QUICK PLOTTING ROUTINE
C	THE ARRAY X(I) IS THE X-AXIS DATA
C	THE ARRAY Y(I) IS THE Y-AXIS DATA
C	N IS THE NUMBER OF POINTS TO BE PLOTTED
C
C
C	THE PARMETER M SPECIFIES WHETHER OR NOT A SET OF
C	AXES IS TO BE DRAWN
C	IF M <= 0 THE AXIS IS DRAWN
C	IF M >= 1 THE AXIS IS NOT DRAWN
C
C	IF M < 0 X AND Y BOUNDS ARE SET
C	IF M = -15 SEMILOG PLOT LOG(Y)  - X AND Y BOUNDS SET
C	IF M = -30 LOG PLOT -- X AND Y BOUNDS SET
C       IF M = -40 LOG(X) SEMILOG PLOT - X AND Y BOUNDS SET
C       ALL OTHER M <=0 : LINEAR PLOT X AND Y BOUNDS SET
C
C	IF M > 1 VARIOUS LINE SYMBOLS CAN BE CHOSEN
C         M=1,2,3,4,...,10
C
C	IF M > 10 INDIVIDUAL POINTS ARE PLOTTED USING VARIOUS SYMBOLS
C         M=13,14,15,16
c
c-------------------------------
c  allow for raising of lower edge (dmc Dec 2009...)
c
      use bottoms_up
c
c-------------------------------
C
      DIMENSION X(N),Y(N)
C  SCALE PRESET BY CALLER
      INCLUDE 'PLOT1MMXB'
C  SCREEN LIMITS
      INCLUDE 'GFTIC'
C
      if(.not.init_gftic) call gftic0
C
      IF(NRSET.GT.0) GO TO 1
C  SET DEFAULT SCREEN LIMITS
      NXR1=150
      NXR2=950
      NYR1=125
      NYR2=700
      NRSET=1
C
 1    CONTINUE
C IF M<=0 SET SCALE AND DRAW AXES
      IF(M.GT.0)GOTO 2
      CALL UBINIT
      CALL GFTICS
      CALL SLIMX(NXR1,NXR2)
      CALL SLIMY(NYR1+idybu*ibu_raise,NYR2)  ! bottoms_up adjust...
      CALL DLIMX(XBND1,XBND2)
      CALL DLIMY(YBND1,YBND2)
      CALL NPTS(N)
      IF(M.EQ.-15 .OR. M .EQ. -30)CALL YTYPE(2)
      IF(M .EQ. -30 .OR. M .EQ. -40) CALL XTYPE(2)
      CALL DPLNST(1,ILINE,ISYM,SIZE)
C  MAKE PLOT
      CALL CHECK(X,Y)
      CALL DSPLAY(X,Y)
      CALL GFTICX
      RETURN
C
C  M>0:  CHOOSE VARIOUS LINE + SYMBOL STYLES TO PLOT NEW CURVE
C   ON OLD PAIR OF AXES
C
 2    CONTINUE
      ISYM=0
      CALL SYMBL(ISYM)
      CALL NPTS(N)
      IF(M.LE.10) CALL DPLNST(M,ILINE,ISYM,SIZE)
      IF(M.GT.10) CALL DPSYST(M,ISYM,SIZE)
      CALL CPLOT(X,Y)
      RETURN
      END
C******************** END FILE DPLOT1.FOR ; GROUP DPLOTT ***************
C same as DPLOT1 but with small size of individual points
      SUBROUTINE DPLOT10(X,Y,N,M)
C	XXXXX  VERSION  10/05/76    XXXXXX
C    VAX VERSION REV MAY 1982 D. MC CUNE
C
C	THIS PROGRAM GENERATES A QUICK PLOTTING ROUTINE
C	THE ARRAY X(I) IS THE X-AXIS DATA
C	THE ARRAY Y(I) IS THE Y-AXIS DATA
C	N IS THE NUMBER OF POINTS TO BE PLOTTED
C
C
C	THE PARMETER M SPECIFIES WHETHER OR NOT A SET OF
C	AXES IS TO BE DRAWN
C	IF M <= 0 THE AXIS IS DRAWN
C	IF M >= 1 THE AXIS IS NOT DRAWN
C
C	IF M < 0 X AND Y BOUNDS ARE SET
C	IF M = -15 SEMILOG PLOT LOG(Y)  - X AND Y BOUNDS SET
C	IF M = -30 LOG PLOT -- X AND Y BOUNDS SET
C       IF M = -40 LOG(X) SEMILOG PLOT - X AND Y BOUNDS SET
C       ALL OTHER M <=0 : LINEAR PLOT X AND Y BOUNDS SET
C
C	IF M > 1 VARIOUS LINE SYMBOLS CAN BE CHOSEN
C         M=1,2,3,4,...,10
C
C	IF M > 10 INDIVIDUAL POINTS ARE PLOTTED USING VARIOUS SYMBOLS
C         M=13,14,15,16
c
c-------------------------------
c  allow for raising of lower edge (dmc Dec 2009...)
c
      use bottoms_up
c
c-------------------------------
C
      DIMENSION X(N),Y(N)
C  SCALE PRESET BY CALLER
      INCLUDE 'PLOT1MMXB'
C  SCREEN LIMITS
      INCLUDE 'GFTIC'
C
      if(.not.init_gftic) call gftic0
C
      IF(NRSET.GT.0) GO TO 1
C  SET DEFAULT SCREEN LIMITS
      NXR1=150
      NXR2=950
      NYR1=125
      NYR2=700
      NRSET=1
C
 1    CONTINUE
C IF M<=0 SET SCALE AND DRAW AXES
      IF(M.GT.0)GOTO 2
      CALL UBINIT
      CALL GFTICS
      CALL SLIMX(NXR1,NXR2)
      CALL SLIMY(NYR1+idybu*ibu_raise,NYR2)  ! bottoms_up adjust...
      CALL DLIMX(XBND1,XBND2)
      CALL DLIMY(YBND1,YBND2)
      CALL NPTS(N)
      IF(M.EQ.-15 .OR. M .EQ. -30)CALL YTYPE(2)
      IF(M .EQ. -30 .OR. M .EQ. -40) CALL XTYPE(2)
      CALL DPLNST(1,ILINE,ISYM,SIZE)
C  MAKE PLOT
      CALL CHECK(X,Y)
      CALL DSPLAY(X,Y)
      CALL GFTICX
      RETURN
C
C  M>0:  CHOOSE VARIOUS LINE + SYMBOL STYLES TO PLOT NEW CURVE
C   ON OLD PAIR OF AXES
C
 2    CONTINUE
      ISYM=0
      CALL SYMBL(ISYM)
      CALL NPTS(N)
      IF(M.LE.10) CALL DPLNST0(M,ILINE,ISYM,SIZE)
      IF(M.GT.10) CALL DPSYST0(M,ISYM,SIZE)
      CALL CPLOT(X,Y)
      RETURN
      END
C******************** END FILE DPLOT1.FOR ; GROUP DPLOTT ***************
