Name: HEIGHT  3
HEIGHT defines the character height.
The call is:  CALL HEIGHT (NHCHAR)                 level 1, 2, 3
         or:  void height (int nhchar);
NHCHAR        is the character height in plot coordinates.
                                            Default: NHCHAR = 36
Name: ANGLE   3
This routine  modifies  the direction  of text  plotted with the
routines MESSAG, NUMBER, PSMESS, RLMESS and RLNUMB.
The call is:  CALL ANGLE (NDEG)                    level 1, 2, 3
         or:  void angle (int ndeg);
NDEG          is  an angle  measured  in degrees and  a counter-
              clockwise direction. 
                                               Default: NDEG = 0
Name: TXTJUS  3
The routine  TXTJUS  defines the alignment  of text plotted with
the routines MESSAG and NUMBER.
The call is:  CALL TXTJUS (CJUS)                   level 1, 2, 3
         or:  void txtjus (char *cjus);
CJUS          is a  character  string  that can have  the values
              'LEFT',  'RIGHT' and 'CENT'. The starting point of
              text  and numbers  will be  interpreted  as  upper
              left, upper right and upper centre point.
                                         Default: CJUS = 'LEFT'.
Name: FRMESS  3
FRMESS  defines the thickness  of frames around text  plotted by
MESSAG.
The call is:  CALL FRMESS (NFRM)                   level 1, 2, 3
         or:  void frmess (int nfrm);
NFRM          is the thickness  of frames  in plot  coordinates.
              If NFRM is negative, frames will be thickened from
              the inside. If positive,  frames will be thickened
              towards the outside.             Default: NFRM = 0
Name: NUMFMT  3
NUMFMT  modifies the format  of numbers  plotted by  NUMBER  and
RLNUMB.
The call is:  CALL  NUMFMT (COPT)                  level 1, 2, 3
         or:  void  numfmt (char *copt);
COPT          is a character string defining the format.
  = 'FLOAT'   will plot numbers in floating-point format.
  = 'EXP'     will  plot  numbers  in  exponential  format where
              fractions range between 1 and 10.
  = 'FEXP'    will plot numbers in the format fEn where f ranges
              between 1 and 10.
  = 'LOG'     will plot numbers logarithmically with base 10 and
              the corresponding exponents. The exponents must be
              passed to NUMBER and RLNUMB. 
                                        Default: COPT = 'FLOAT'.
 Note:        SETEXP and  SETBAS alter  the position and size of
              exponents.
Name: NUMODE  3
NUMODE  alters the appearance  of numbers plotted  by NUMBER and
RLNUMB.
The call is:  CALL NUMODE (CDEC, CGRP, CPOS, CFIX) level 1, 2, 3
         or:  void numode (char *cdec, char *cgrp, char *cpos, 
                                                    char *cfix);
CDEC          is a character string that defines the decimal no-
              tation.
  = 'POINT'   defines a point.
  = 'COMMA'   defines a comma.
 CGRP         is a  character string  that defines  the grouping
              of 3 digits.
  = 'NONE'    means no grouping.
  = 'SPACE'   defines a space as separator.
  = 'POINT'   defines a point as separator.
  = 'COMMA'   defines a comma as separator.
 CPOS         is a character string  that defines  the sign pre-
              ceding positive numbers.
  = 'NONE'    means no preceding sign.
  = 'SPACE'   defines a space as a preceding sign.
  = 'PLUS'    defines a plus as a preceding sign.
 CFIX         is a  character string  specifying character spa-
              cing.
  = 'NOEQUAL' is used for proportional spacing.
  = 'EQUAL'   is used for non-proportional spacing.
                  Default: ('POINT', 'NONE', 'NONE', 'NOEQUAL').
Name: CHASPC  3
CHASPC affects intercharacter spacing.
The call is:  CALL CHASPC (XSPC)                   level 1, 2, 3
         or:  void chaspc (float xspc);
XSPC          is a real number  that contains  a multiplier.  If
              XSPC < 0,  the intercharacter spacing  will be re-
              duced by XSPC * NH  plot coordinates  where NH  is
              the  current character  height.  If XSPC > 0,  the
              spacing  will be enlarged by  XSPC * NH plot coor-
              dinates.                        Default: XSPC = 0.
Name: CHAWTH  3
CHAWTH affects the width of characters.
The call is:  CALL CHAWTH (XWTH)                   level 1, 2, 3
         or:  void chawth (float xwth);
XWTH          is a real number between 0 and 2. If XWTH < 1, the
              character width will be reduced. If XWTH > 1,  the
              character width will be enlarged. 
                                              Default: XWTH = 1.
Name: CHAANG  3
CHAANG defines an inclination angle for characters.
The call is:  CALL CHAANG (ANGLE)                  level 1, 2, 3
         or:  void chaang (float angle);
ANGLE         is the inclination angle  between  characters  and
              the vertical direction in degrees (-60 <= ANGLE <=
              60).                           Default: ANGLE = 0.
Name: FIXSPC  3
All fonts in DISLIN  except for  the default font are proportio-
nal.  After a call to  FIXSPC  the characters  of a proportional
font will also be plotted with a constant character width.
The call is:  CALL FIXSPC (XFAC)                   level 1, 2, 3
         or:  void float (xfac);
XFAC          is a real number containing a scaling factor. Cha-
              racters  will be centred  in a box of width XFAC * 
              XMAX  where XMAX is the largest character width of
              the current font.
Name: DISALF  4
DISALF defines the default font.
The call is:  CALL DISALF                          level 1, 2, 3
         or:  void disalf ();
Name: SIMPLX  4
SIMPLX defines a single stroke font.
The call is:  CALL SIMPLX                          level 1, 2, 3
         or:  void simplx ();
Name: COMPLX  4
COMPLX defines a complex font.
The call is:  CALL COMPLX                          level 1, 2, 3
         or:  void complx ();
Name: DUPLX   4
DUPLX defines a double stroke font.
The call is:  CALL DUPLX                           level 1, 2, 3
         or:  void duplx ();
Name: TRIPLX  4
TRIPLX defines a triple stroke font.
The call is:  CALL TRIPLX                          level 1, 2, 3
         or:  void triplx ();
Name: GOTHIC  4
GOTHIC defines a gothic font.
The call is:  CALL GOTHIC                          level 1, 2, 3
         or:  void gothic ();
Name: SERIF   4
SERIF defines a complex shaded stroke font.
The call is:  CALL SERIF                           level 1, 2, 3
         or:  void serif ();
Name: HELVE   4
HELVE defines a shaded font.
The call is:  CALL HELVE                           level 1, 2, 3
         or:  void helve ();
Name: HELVES  4
HELVES defines a shaded font with small characters.
The call is:  CALL HELVES                          level 1, 2, 3
         or:  void helves ();
Name: SHDCHA  4
With a call to SHDCHA,  characters of the fonts SERIF, HELVE and
HELVES
will be shaded.
The call is:  CALL SHDCHA                          level 1, 2, 3
         or:  void shdcha ();
Name: PSFONT  4
PSFONT defines a PostScript font.
The call is:  CALL PSFONT (CFONT)                  level 1, 2, 3
         or:  void psfont (char *cfont);
CFONT         is a character  string containing  the font. Stan-
              dard font names in PostScript are:

           Times-Roman                    Courier
           Times-Bold                     Courier-Bold
           Times-Italic                   Courier-Oblique
           Times-BoldItalic               Courier-BoldOblique
           Helvetica                      AvantGarde-Book
           Helvetica-Bold                 AvantGarde-Demi
           Helvetica-Oblique              AvantGarde-BookOblique
           Helvetica-BoldOblique          AvantGarde-DemiOblique
           Helvetica-Narrow               Bookman-Light
           Helvetica-Narrow-Bold          Bookman-LightItalic
           Helvetica-Narrow-Oblique       Bookman-Demi
           Helvetica-Narrow-BoldOblique   Bookman-DemiItalic
           NewCenturySchlbk-Roman         Palatino-Roman
           NewCenturySchlbk-Italic        Palatino-Italic
           NewCenturySchlbk-Bold          Palatino-Bold
           NewCenturySchlbk-BoldItalic    Palatino-BoldItalic
           ZapfChancery-MediumItalic      Symbol
           ZapfDingbats
Notes:      - The file format  must be set to  'POST'  with  the
              routine METAFL.
            - Font names cannot be shortened. Some printers pro-
              vide additional  non-standard fonts.  These  fonts
              should  be specified  exactly in  upper  and lower
              characters  as they are described  in the  printer
              manuals.  PostScript  suppresses  any graphics  if
              there is a syntax error in the font name. Standard
              font names are not case-sensitive.
            - A call to a DISLIN font resets PostScript fonts.
Name: HWFONT  4
The routine  HWFONT  sets a standard hardware  font  if hardware
fonts are supported by the current file format.  For example, if
the file format is PostScript,  the font  'Times Roman' is used.
If no hardware fonts are supported, COMPLX is used.
The call is:  CALL HWFONT                          level 1, 2, 3
         or:  void hwfont ();
Name: BASALF  4
BASALF defines the base alphabet.
The call is:  CALL BASALF (CALPH)                  level 1, 2, 3
         or:  void basalf (char *calph);
CALPH         is a  character string  that  can have  the values
              'STANDARD', 'ITALIC', 'GREEK', 'SCRIPT', 'RUSSIAN'
              and 'MATHEMATIC'. These alphabets can be used with
              all fonts.                    Default: 'STANDARD'.
Name: SMXALF  4
SMXALF defines shift characters to shift between the base and an
alternate alphabet.
The call is:  CALL SMXALF (CALPH, C1, C2, N)       level 1, 2, 3
         or:  void smxalf (char *calph, char *c1, char *c2,
                                                         int n);
CALPH         is a character string  containing an alphabet.  In
              addition  to the  names in  BASALF, CALPH can have
              the value 'INSTRUCTION'.
 C1           is a character that shifts to the alternate alpha-
              bet.
 C2           is a character that shifts back to the base alpha-
              bet.  C1 and C2  may be identical.  After the last
              plotted character  of a character  string,  DISLIN
              automatically shifts back to the base alphabet.
 N            is an integer between 1 and 6.  Up to 6  alternate
              alphabets can be defined.
Name: EUSHFT  4
EUSHFT defines a shift character  to plot special  European cha-
racters.
The call is:  CALL EUSHFT (CNAT, C)                level 1, 2, 3
         or:  void eushft (char *cnat, char *c)
CNAT          is a  character string  that can  have  the values
              'GERMAN', 'FRENCH', 'SPANISH', 'DANISH',  'ACUTE',
              'GRAVE' and 'CIRCUM'.
C             is a  shift  character.  For example  with  CNAT =
              'GERMAN',  the characters  A, O, U, a, o, u  and s
              placed directly after C will be plotted as Ae, Oe,
              Ue, ae, oe, ue and ss.  With CNAT = 'DANISH',  the
              characters A, O, E, a, o  and e will be plotted as
              A-ring, O-slash, AE, a-ring, o-slash and ae.
Notes:      - Shift characters can be defined multiple where the
              characters must be different.
            - European  characters are  supported by  PostScript
              fonts and by COMPLX.   
Name: MIXALF  3
Indices and exponents can be plotted by using control characters
in characters strings.  The routine  MIXALF instructs  DISLIN to
search for control characters in character strings.
The call is:  CALL MIXALF                          level 1, 2, 3
         or:  void mixalf ();
Note:         The predefined character

        [     is used for exponents. The character height is re-
              duced by the scaling factor  FEXP  and the  pen is
              moved up  FBAS * NH  plot coordinates  where NH is
              the current character height.
        ]     is used for indices. The pen is moved down  FBAS *
              NH  plot coordinates  and  the character height is
              reduced by the scaling factor FEXP.
        $     is used  to move  the pen  back  to the base-line.
              This will  automatically  be done  at the end of a
              character string.

FBAS and FEXP have the default values 0.6 and 0.8, respectively,
these values can be changed with the routines SETBAS and SETEXP.
Name: SETBAS  3
SETBAS defines the position of indices and exponents.  This rou-
tine also affects logarithmic axis labels.
The call is:  CALL SETBAS (FBAS)                   level 1, 2, 3
         or:  void setbas (float fbas);
FBAS          is a real number used as a scaling factor. The pen
              will be moved up or down by  FBAS * NH  plot coor-
              dinates to  plot exponents  or indices.  NH is the
              current  character height.
                                            Default:  FBAS = 0.6
Name: SETEXP  3
SETEXP sets the character height of indices and exponents.
The call is:  CALL SETEXP (FEXP)                   level 1, 2, 3
         or:  void setexp (float fexp);
FEXP          is a  real number  used as  a scaling factor.  The
              character height of indices and  exponents  is set
              to  FEXP * NH  where NH  is the current  character
              height.                       Default:  FEXP = 0.8
Name: NEWMIX  3
NEWMIX defines an alternate set of control characters  for plot-
ting indices and exponents.  The default characters '[', ']' and
'$' are replaced by '~', '_' and '%'.
The call is:  CALL NEWMIX                          level 1, 2, 3
         or:  void newmix ();
Name: SETMIX  3
SETMIX  defines global  control characters for plotting  indices
and exponents.
The call is:  CALL SETMIX (C, CMIX)                level 1, 2, 3
         or:  void setmix (char *c, char *cmix);
C             is a new control character.
CMIX          is a character string that defines the function of
              the  control character.  CMIX can have  the values
              'EXP',  'IND',  'RES' and 'LEG' for exponents, in-
              dices, resetting the base-line and newline.
Note:         The routines  NEWMIX  and SETMIX  only modify  the
              control characters.  A call to  MIXALF  is  always
              necessary to plot indices and exponents.
Name: CHNCRV  10
CHNCRV  defines attributes that will be automatically changed by
CURVE after a certain number of calls to the routine CURVE.
The call is:    CALL CHNCRV (CATT)                 level 1, 2, 3
         or:    void chnvrv (char *catt);
CATT = 'NONE'   means that CURVE changes no attributes.
     = 'COLOR'  means that colours will be changed.
     = 'LINE'   means that line styles will be changed.
     = 'BOTH'   means that colours and line styles will be chan-
                ged.                     Default: CATT = 'NONE'.
Note:           The sequence  of colours is   WHITE/BLACK,  RED,
                GREEN, YELLOW, BLUE, ORANGE, CYAN and MAGENTA.
                The sequence of line styles is SOLID, DOT, DASH,
                CHNDSH, CHNDOT, DASHM, DOTL and DASHL.
                The symbol number is always changed.  It will be
                incremented by 1  starting with the current sym-
                bol defined by MARKER.
Name: INCCRV  10
INCCRV defines the number of calls after which  CURVE will auto-
matically change attributes.
The call is:  CALL INCCRV (NCRV)                   level 1, 2, 3
         or:  void inccrv (int ncrv);
NCRV          is the number of curves  that will be plotted with
              identical attributes.
                                               Default: NCRV = 1
Name: CHNATT  10
CHNATT is an alternative routine to  INCCRV.  It is useful  when
the number of curves  plotted with identical attributes  varies.
CHNATT defines new attributes  that will be used by CURVE during
the next call.
The call is:  CALL CHNATT                          level 1, 2, 3
         or:  void chnatt ();
Notes:      - CHNATT changes only attributes specified with CHN-
              CRV.
            - Attributes  cannot be skipped  by  calling  CHNATT
              several times;  the order of  the attribute cycles
              must be changed.
Name: RESATT  10
In general,  curve attributes will  be repeated after 8 changes.
With the routine RESATT, the attributes can be reset earlier.
The call is:  CALL RESATT                          level 1, 2, 3
         or:  void resatt ();
Name: INCMRK  10
INCMRK selects line or symbol mode for CURVE.
The call is:  CALL INCMRK (NMRK)                   level 1, 2, 3
         or:  void incmrk (int nmrk);
NMRK = -n     means that  CURVE plots  only symbols.  Every n-th
              point will be marked by a symbol.
     =  0     means that CURVE connects points with lines.
     =  n     means that CURVE  plots lines and marks every n-th
              point with a symbol.
                                               Default: NMRK = 0
Name: MARKER  10
The symbols used to plot points can be selected with the routine
MARKER. The symbol number will be  incremented by 1 after a cer-
tain number of calls to CURVE defined by INCCRV.
The call is:  CALL MARKER (NSYM)                   level 1, 2, 3
         or:  void marker (int nsym);
NSYM          is the symbol number between 0 and 21.
                                               Default: NSYM = 0
Name: HSYMBL  5
HSYMBL defines the size of symbols.
The call is:  CALL HSYMBL (NHSYM)                  level 1, 2, 3
         or:  void hsymbl (int nhsym);
NHSYM         is the size of symbols in plot coordinates.
                                             Default: NHSYM = 35
Name: THKCRV  10
THKCRV defines the thickness of curves.
The call is:  CALL THKCRV (NTHK)                   level 1, 2, 3
         or:  void thkcrv (int nthk);
NTHK          is the thickness of curves in plot coordinates.
                                          Default:      NTHK = 1
Name: GAPCRV  10
GAPCRV defines a data gap used in the routine CURVE. If the dis-
tance between two neightbouring  X coordinates  is greater  than
the gap value, CURVE will not connect these data points.  
The call is:  CALL GAPCRV (XGAP)                   level 1, 2, 3
         or:  void gapcrv (float xgap);
XGAP          is the gap value.
Name: POLCRV  10
The routine POLCRV defines an interpolation method used by CURVE
to connect points.
The call is:   CALL POLCRV (CPOL)                  level 1, 2, 3
         or:   void polcrv (char *cpol); 
CPOL           is a character string containing  the  interpola-
               tion method.
  = 'LINEAR'   defines linear interpolation.
  = 'STEP'     defines step interpolation.
  = 'BARS'     defines bar interpolation.
  = 'SPLINE'   defines spline interpolation.
  = 'PSPLINE'  defines parametric spline interpolation.
                                       Default: CPOL = 'LINEAR'.
Notes:       - The width of bars can be set with BARWTH.
             - For spline interpolation,  the X-coordinates must
               have different values  and be in ascending order.
               There is no  restriction for a parametric spline.
               The order of spline polynomials and the number of
               interpolated points can be modified with SPLMOD.
Name: SPLMOD  10
SPLMOD defines the order of polynomials and the number of inter-
polated points  used for the interpolation methods  'SPLINE' and
'PSPLINE'.
The call is:   CALL  SPLMOD (NGRAD, NPTS)          level 1, 2, 3
         or:   void  splmod (int ngrad, int npts); 
NGRAD          is the order of the spline polynomials  (2 - 10).
               It affects the number of points accepted by CURVE
               which is determined by the formula   (2 * NGRAD +
               1) * N <= 1000. For example, with a cubic spline,
               up to 142 points can be passed to CURVE.
NPTS           is the number  of points that will be  interpola-
               ted in the range XRAY(1) to XRAY(N).
                                              Default: (3, 200).
Name: BARWTH  10
BARWTH sets the width of bars plotted by CURVE.
The call is:  CALL BARWTH (XWTH)                   level 1, 2, 3
         or:  void barwth (float xwth);
XWTH          defines  the bar width. If positive,  the absolute
              value of XWTH * (XRAY(1)-XRAY(2)) is used.
              If negative,  the absolute value of  XWTH is  used
              where XWTH is specified in plot coordinates.
                                            Default: XWTH = 0.75
Name: NEGLOG  10
For a  logarithmic scaling,  the routine  CURVE  suppresses  the
plotting of curves if some of the data have non positive values.
With a call to NEGLOG,  non positive values  will be interpreted
positive. 
The call is:  CALL NEGLOG (EPS)                    level 1, 2, 3
         or:  void neglog (float eps);
EPS           is a  positive  user coordinate  used for negative
              coordinates.     
Name: NOCHEK  10
The routine  NOCHEK can be used to suppress the listing of curve
points that lie outside of the axis scaling.
The call is:  CALL NOCHEK                          level 1, 2, 3
         or:  void nochek ();
Name: SOLID   12
The routine SOLID defines a solid line style.
The call is:  CALL SOLID                           level 1, 2, 3
         or:  void solid ();
Name: DOT     12
The routine DOT defines a dotted line style.
The call is:  CALL DOT                             level 1, 2, 3
         or:  void dot ();
Name: DASH    12
The routine DASH defines a dashed line style.
The call is:  CALL DASH                            level 1, 2, 3
         or:  void dash ();
Name: CHNDSH  12
The routine CHNDSH defines a dashed-dotted line style.
The call is:  CALL CHNDSH                          level 1, 2, 3
         or:  void chndsh ();
Name: CHNDOT  12
The routine CHNDOT defines a dotted-dashed line style.
The call is:  CALL CHNDOT                          level 1, 2, 3
         or:  void chndot ();
Name: DOTL    12
The routine DOTL defines a long-dotted line style.
The call is:  CALL DOTL                            level 1, 2, 3
         or:  void dotl ();
Name: DASHL   12
The routine DASHL defines a long-dashed line style.
The call is:  CALL DASHL                           level 1, 2, 3
         or:  void dashl ();
Name: DASHM   12
The routine DASHM defines a medium-dashed line style.
The call is:  CALL DASHM                           level 1, 2, 3
         or:  void dashm ();
Name: LINTYP  12
The routine LINTYP defines a line style.
The call is:  CALL LINTYP (NTYP)                   level 1, 2, 3
         or:  void lintyp (int ntyp);
NTYP          is an integer  that can have  the values 0: SOLID,
              1: DOT, 2: DASH, 3: CHNDSH,  4: CHNDOT,  5: DASHM,
              6: DOTL and 7: DASHL.
                                               Default: NTYP = 0
Name: MYLINE  12
MYLINE defines a global line style.
The call is:  CALL MYLINE (NRAY, N)                level 1, 2, 3
         or:  void myline (int *nray, int n);
NRAY          is an array  of  positive integers  characterizing
              the line style.  Beginning with  pen-down,  a pen-
              down and pen-up will be done alternately according
              to the specified lengths in NRAY. The lengths must
              be given in plot coordinates.
N             is the number of elements in NRAY.
Examples:     The values of NRAY for the predefined  line styles
              are given below:

              SOLID :        NRAY = {1}
              DOT   :        NRAY = {1, 10}
              DASH  :        NRAY = {10, 10}
              CHNDSH:        NRAY = {30, 15, 10, 15}
              CHNDOT:        NRAY = {1, 15, 15, 15}
              DASHM :        NRAY = {20, 15}
              DOTL  :        NRAY = {1, 20}
              DASHL :        NRAY = {30, 20}
Name: LINWID  12
The routine LINWID sets the line width.
The call is:   CALL LINWID (NWIDTH)                level 1, 2, 3
         or:   void linwid (int nwidth); 
NWIDTH         is the line width in plot coordinates.
                                             Default: NWIDTH = 1
Name: PENWID  12
The routine PENWID sets the pen width.  PENWID has the same mea-
ning as  LINWID  but can be used  to define a smaller line width
than 1 (i.e. for PostScript files).
   
The call is:   CALL PENWID (XWIDTH)                level 1, 2, 3
         or:   void penwid (float xwidth); 
XWIDTH         is the pen width in plot coordinates.
                                            Default: XWIDTH = 1.
Name: LNCAP   12
The routine LNCAP sets the current line cap parameter.
The call is:   CALL LNCAP (CAP)                    level 1, 2, 3
         or:   void lncap (char *cap); 
CAP            is a character string defining the line cap.
  = 'ROUND'    defines rounded caps.
  = 'CUT'      defines square caps.
  = 'LONG'     defines  square caps  where  stroke  ends will be
               continued equal to half the line width. 
                                          Default: CAP = 'LONG'.
Name: LNJOIN  12
The routine LNJOIN sets the current line join parameter.
The call is:   CALL LNJOIN (CJOIN)                 level 1, 2, 3
         or:   void lnjoin (char *cjoin); 
CJOIN          is a  character  string  containing  the the line
               join.
  = 'SHARP'    defines sharp corners between path segments.
  = 'TRUNC'    defines truncated corners between path segments.
                                        Default: CJOIN = 'TRUNC'
Name: LNMLT   12
The routine  LNMLT  sets the current miter limit parameter. This
routine can be useful if the line join is set to 'SHARP'. 
The call is:   CALL LNMLT (XFC)                    level 1, 2, 3
         or:   void lnmlt (float xfc); 
XFC            is a floatingpoint number where  XFC * line width
               will be used as the miter limit. The miter length
               is the  distance  between  the inner and  outside
               edge of a path corner.    
