next up previous contents index
Next: SUBROUTINE PLOTLGL Up: MASTER Subroutines Previous: SUBROUTINE PLOTLG

SUBROUTINE PLOTLG2

 PLOTLG2 is a simple routine to plot multiple curves defined in x,y in  log and/or  linear\ scaling including appropriate axes and plot title. Various options select the format of plotting. This subroutine is designed to plot many y value curves which may be distinguished by color and/or line type. This routine is similar to  PLOTLGX but uses a simpler axis specification.

CALL PLOTLG2(x,y,nl,np,iflag,isym,xl,yl,xt,nxt,yt,nyt,t,nt,<xm,
                xx,ym,yx<<,ic>,l>>)

x     (R): array of x values
y     (R): array of y values dimensioned y(np,nl)
nl    (I): number of data lines to plot from y array
np    (I): number of points in x array
iflag (I): option flag
           < 0 : do not close LONGLIB after plotting
           = 0 : close LONGLIB--no plot produced
           > 0 : close LONGLIB after plotting
 (magnitude) > 10000 : do not initialize LONGLIB before plotting
   (1's digit)  = 1 : plot x linear, y logarithmic (base 10)
                = 2 : plot x logarithmic, y linear
                = 3 : plot x logarithmic, y logarithmic
                = 4 : plot x linear, y linear
   (10's digit) = 0 : no axes or title plotted
                = 1 : axes with axis line/ticks on top and sides
                = 2 : plot solid cartesian grid
                = 3 : plot ticked cartesian grid without box
                = 4 : plot ticked cartesian grid with box
                = 5 : ticked cartesian grid, box w/axis ticks
                = 6 : plot without box or cartesian grid
                = 7 : plot solid logarithmic grid
                = 8 : plot dotted logarithmic grid
                = 9 : plot ticked logarithmic grid
   (100's)      = 0 : Ask which screen device to use
               <> 0 : Screen Device Number (see FRAME)
isym  (I): plot a symbol every isym'th point
           < 0 : symbols only plotted, no line
           = 0 : no symbols, line only
           > 0 : symbol plotted every isym'th point
xl    (R): x axis length in inches (integer-valued)
           < 0 : use input scaling in xm,xx
           > 0 : use auto scaling computed from input array
yl    (R): y axis length in inches (integer-valued)
           < 0 : use input scaling in ym,yx
           > 0 : use auto scaling computed from input array
xt    (C): x axis title string
nxt   (I): number of characters in xt
           < 0 : axis ticks on top of x axis
           = 0 : no axis
           > 0 : axis ticks on bottom of x axis (normal)
yt    (C): y axis title string
nyt   (I): number of characters in yt
           < 0 : axis ticks on right of y axis
           = 0 : no axis
           > 0 : axis ticks on left of y axis (normal)
t     (C): plot title string (limited to 99 characters)
nt    (I): number of characters in t
           < 0 : use color array
           = 0 : no title
           > 0 : do not use color array
           if |nt|/100 > 0 : use line type list
xm    (R): minimum value of x array (accessed if xl or nt < 0)
xx    (R): maximum value of x array (accessed if xl or nt < 0)
ym    (R): minimum value of y array (accessed if xl, yl or nt<0)
yx    (R): maximum value of y array (accessed if xl, yl or nt<0)
(NOTE: color array accessed if nt < 0 or |nt|/100 >0)
ic    (I): color list
           ic(1) : color for grid
           ic(2) : color for axis lines
           ic(3) : color for axis numbers
           ic(4) : color for axis titles
           ic(5) : color for axis exponents
           ic(6) : color for title (return)
           ic(7) : color for plotted line 1
           ic(8) : color for plotted line 2
           ic(9) :    etc.
(NOTE: line type list accessed only if |nt|/100>0)
l     (I): line type for data lines list 

common /cplotlg2/xmr,dxr,ymr,dyr

xmr   (R): returned value of xmin
dxr   (R): returned value of scale factor (xmax-xmin)/xlen
ymr   (R): returned value of ymin
dyr   (R): returned value of scale factor (ymax-ymin)/ylen



David Long
Wed Jun 12 10:34:11 MDT 1996