PLOTLGL plots multiple curves defined in x,y with log and/or linear\ scaling including appropriate axes and plot title using software line types (LINSEQ). It is similar in character to PLOTLGX. Various options may be used select the format of plotting. This routine may be used to plot many y value curves simultaneously with the curves distinguished by symbols, color, and/or line type. This subroutine permits axis parameter flexibility and dimensioning for the y array values.
NOTE: the values in the x and y arrays are modified. Upon return they contain their original contents scaled by xm,dx,ym,dy (see LINE).
CALL PLOTLGL(x,y,w,nld,npd,nl,np,iflag,isym,xl,yl,ns,s,l,
nmx,nnx,mlx,tsx,ndx,smx,
nmy,nny,mly,tsy,ndy,smy,
xt,nxt,yt,nyt,t,nt,<xm,xx,ym,yx<,ic>>)
x (R): array of x values dimensioned at least x(np)
y (R): array of y values dimensioned y(npd,nld)
w (R): working array dimensioned at least d(3*np+3)
nld (I): dimension of y array (lines)
npd (I): dimension of y array (points)
nl (I): number of data lines to plot from y array
np (I): number of points per data line
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
< 0 : use input scaling in xm,xx
> 0 : use auto scaling computed from input array
yl (R): y axis length in inches
< 0 : use input scaling in ym,yx
> 0 : use auto scaling computed from input array
ns (I): smoothing passes (normally zero--see LINSEQ)
s (R): nominal interval length (see LINSEQ)
l (I): linetype array dimensioned l(5*np) (see LINSEQ)
l(1): l1 for line 1
l(2): l2 for line 1
...
l(5): l5 for line 1
l(6): l1 for line 2
l(7): l2 for line 2
...
(see AXIS2 for detailed description of axis parameters)
nmx (I): number of minor ticks between major ticks on x axis
nnx (I): highlight length of nnx-th minor tick on x axis
mlx (I): number of major tick marks on x axis
tsx (R): size of title and numbers on x axis
< 0 auto exponent scaling (x10 to power) disabled
> 0 auto exponent scaling (x10 to power) enabled
ndx (I): number of digits to right of decimal point on x axis
smx (R): major tick length on x axis
nmy (I): number of minor ticks between major ticks on y axis
nny (I): highlight length of nny-th minor tick on y axis
mly (I): number of major tick marks on y axis
tsy (R): size of title and numbers on y axis
< 0 auto exponent scaling (x10 to power) disabled
> 0 auto exponent scaling (x10 to power) enabled
ndy (I): number of digits to right of decimal point on y axis
smy (R): major tick length on y axis
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)
ic (I): color array
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.
common /cplotlgl/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