PLOTLG is a very simple routine which plots a single curve defined in x,y with log and/or linear\ scaling including appropriate axes and plot title. Various options select the format of plotting and type of grid.
CALL PLOTLG(x,y,n,iflag,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
n (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 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)
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: optional color array accessed if nt<0 or |nt|/100>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 plotted line
ic(7) : color for title (return)
(NOTE: optional line type array only accessed if |nt|/100>0)
l (I): line type of data line
if |nt|/100 > 0 : use line type list
common /cplotlg/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