AXIS, GSYMBL, etc. (Obsolete)

axis | scale, line | csymbl | symbol, number | gsymbl, chtype, pchar, pnorm, psubsc, psupsc, pshift

AXIS
NAME
    axis - Draw a coordinate axis

SYNOPSIS

      call axis(xp, yp, text, ltx, axlen, angle, firstv, deltav)
  xp, yp  [float] Coordinates (in cm) of Start point
  text    [char]  Label string for Axis Name
  ltx     [int]   string length (must not be 0)
                  If positive, the Label is written on counter-clockwise side
                  of the axis. Otherwise on clockwise side.
  axlen   [float] Length (in cm) of Axis (no less than 2cm)
  angle   [float] Axis direction (in degrees counter-clockwise from +X)
  firstv  [float] Initial value of graduation
  deltav  [float] Scaling for 1cm increment of axis
                  (The value 0. is treated as 1.0/cm.)

EXAMPLE

      dimension p(2,12)
      do 10 i=1,10
        p(1,i) = float(i-1)
        p(2,i) = sqrt(p(1,i))
   10 continue
      call scale(p(1,1), 10., 10, 2)
      call scale(p(2,1), 10., 10, 2)
      call psopn('axis.ps', 'a4p')
      call plots(2., 2.)
      call axis(1., 1., 'Axis-X', -6, 10., 0., p(1,11), p(1,12))
      call axis(1., 1., 'Y=sqrt(X)', 9, 10., 90., p(2,11), p(2,12))
      call line(p(1,1), p(2,1), 10, 2, 1, 4)
      call plote
      call pscls
      stop
      end

SCALE, LINE
NAME
    scale - Automatic scaling for given array data
    line  - Draw array data

SYNOPSIS

      call scale(va, axlen, npt, inc)
  va      [float] Coordinate data array (or its 1st element location)
  axlen   [float] Length (in cm) of Axis (no less than 2cm)
  npt     [int]   Number of data points (no less than 2)
  inc     [int]   Interval of each data in the array (must be positive)
              Initial value (firstv) and scaling (deltav) are given in the
            elements 'va(npt*inc + 1)' and 'va(npt*inc + inc + 1)', provided
            the 1st data element is va(1).  The array must have enough size.

      call line(xa, ya, npt, inc, ltype, mark)
  xa, ya  [float] Coordinate data arrays (or its 1st element location)
  npt     [int]   Number of data points (must be positive)
  inc     [int]   Interval of each data in the array (must be positive)
  ltype   [int]   If ltype>=0, data points are connected by solid line.
                  If ltype<>0, marks are drawn on each |ltype| points.
  mark    [int]   Center-symbol code number specifying the mark.
              Before calling this routine, Initial value and scaling for both
            arrays 'xa' and 'ya' must be established, by calling 'scale' or
            otherwise.  [The relative positions of them from the 1st element
            are (npt*inc) and (npt*inc + inc).]

CSYMBL
NAME
    csymbl - Draw center-symbol

SYNOPSIS

      call csymbl(xx, yy, size, ic, angle, mode)
  xx, yy  [float] Coordinates (in cm) of the center of the symbol to draw
  mode    [int]   If even, draw line to (xx,yy),
                  If odd, move to (xx,yy) without drawing.
  size    [float] Size (in cm) of center-symbol
  ics     [int]   Center-symbol code number (0 - 39) to draw.
                  If ics>40 or ics<0, no symbol is drawn but the pen is moved
                  according to xx,yy,mode values.
  angle   [float] Rotation angle (in degrees) to draw center-symbol
Center-SYMBOL Strokes

SYMBOL, NUMBER
NAME
    symbol - Draw a symbol string (using 'gsymbl' routine)
    number - Draw a number string (using 'gsymbl' routine)

SYNOPSIS

      call symbol(xp, yp, high, text, ang, nc)
      call number(xp, yp, high, fv, ang, ndec)
  xp, yp  [float] Coordinates (in cm) to start to draw string
                  If xp=yp=999., start from temporal pen location, and
                  if either xp or yp is 999., the value of temporal pen
                  location is used for the corresponding coordiante.
  high    [float] Height (in cm) of character size
  ang     [float] Direction angle to draw text (in degrees from +X axis)
  text    [char]  Text string to draw (or center-symbol code)
  nc      [int]   Length (number of bytes) of text string
                  If positive, length (number of bytes) of text string,
                  otherwise, the 1st element of 'text' is regarded as the 
                  center-symbol code to draw.  If nc<=-2, draw line to (xp,yp).
  fv      [float] Numerical value to draw number
                  (Integer digits must not exceed 21 including minus sign.)
  ndec    [int]   Number of digits after decimal point to draw
                  If negative, decimal point is not drawn, and the [|ndec| - 1]
                  lower digits of integer part are not drawn if ndec<=-2.
                  (If ndec>9 or ndec<-9, it is regarded as ndec=9 or ndec=-9.)

GSYMBL, CHTYPE, PCHAR, PNORM, PSUBSC, PSUPSC, PSHIFT
NAME
    gsymbl - Draw a character string of right angle style
             (which causes redefinition of 'chtype')
    chtype - Define style of character string
    pchar  - Draw a character string with the predefined style
    pnorm / psubsc / psupsc
           - Force character Normal / Subscript / Superscript mode
    pshift - Assign shift function codes

  Here, the valid character codes are limited to Alphabets (26 capital and
  26 small letters), Numerals (10 letters), SPACE, and 32 Special letters
  bellow [95 letters in total].

     ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~

SYNOPSIS

      call gsymbl(xx, yy, high, bcd, angle, nc)
      call chtype(angle, slope, high, ratio)
      call pchar (bcd, nc, xx, yy, kk)
  bcd     [char]  Character string to draw
  nc      [int]   Number of characters to draw (including shift codes)
  xx, yy  [float] Coordinates (in cm) of base point to draw string
  kk      [int]   If kk=0, xx and yy are neglected, and start drawing from the
                  temporal pen location.
  high    [float] Height (in cm) of character size (h)
  angle   [float] Direction angle (in degrees) to draw text (a)
  slope   [float] Inclination (in degrees) of character (s)
  ratio   [float] Horizontal exaggeration ratio (r)

      call pnorm
      call psubsc
      call psupsc
      call pshift(cs)
  cs      [char]  Two character codes to be assigned for shift functions,
                  start/end of subscript and start/end of superscript.
                  If the code is other than 95 valid code above or it is
                  a SPACE code, the corresponding shift function is disabled.
GSYMBL Strokes and EXAMPLES