Man Linux: Main Page and Category List


       bgraph - do a set of batch graphs to a metafile


       bgraph [ -type ..  ][ +variable value ..  ][ file ..  ]


       Bgraph  reads  each  graph  file  in sequence and converts it to a plot
       suitable for use by a metafile driver program.  If no files are  given,
       the standard input is read.

       The  graph  type  can be defined with a -type option.  Types are simply
       include files which set default  values  for  certain  variables.   The
       actual include file name is the type concatanated with ".plt".  Typical
       types are "scatter", "line", and "curve".  A scatter graph  shows  only
       points.   A  line  graph  shows  only lines connecting points.  A curve
       graph shows both points and connecting lines.

       Variables can be set explicitly  with  +variable  value  options.   The
       following standard graph variables are supported:

       fthick    The  frame thickness, valued from 0 to 4.  A value of 0 turns
                 the frame off.

       grid      The grid: 1 is on, 0 is off.

       include   The include file name.  Graph input is taken from  the  file.
                 If  the  file  is  not  found in the current directory, it is
                 searched for in a set of standard locations.

       legend    The legend title.

       othick    The origin axis thickness, valued from 0 to 4.  A value of  0
                 turns the origin off.

       period    The period for a polar plot.  For a plot in degrees, use 360.
                 For radians, use 6.283.  A value of 0 (the default) indicates
                 a Cartesian plot.

       subtitle  The graph subtitle.

       symfile   The point symbol metafile.

       tstyle    The  frame tick mark style.  The default value is 1, which is
                 outward tick marks.  A value of 2 is inward ticks, 3 is cross
                 ticks.  A value of 0 disables frame tick marks.

       title     The graph title.

       xlabel    The x axis label.

       xmap      The   x   axis   mapping   function.    An   x  axis  mapping
                 xmap(x)=log(x) produces a log x axis.

       xmax      The x axis maximum.

       xmin      The x axis minimum.

       xstep     The x axis step.

       ylabel    The y axis label.

       ymap      The  y  axis   mapping   function.    An   y   axis   mapping
                 ymap(y)=log(y) produces a log y axis.

       ymax      The y axis maximum.

       ymin      The y axis minimum.

       ystep     The y axis step.

       In  addition  to  the standard graph variables, each curve has a set of
       variables.  The variables for curve ’A’ all begin with the letter  ’A’;
       the  variables  for curve ’B’ all begin with the letter ’B’, and so on.
       Up to 8 curves are supported on a single graph, ’A’ through  ’H’.   The
       variables for curve ’A’ are:

       A         The  function  for  curve  ’A’.  If Adata is undefined, xmin,
                 xmax and Anpoints are used to determine  which  x  values  to
                 plot.   If  Adata  is defined and A is a function of a single
                 variable (ie. A(x)), data values are interpreted as x  values
                 to  be  plotted.   If Adata is defined and A is a function of
                 two variables (ie. A(x,y)), data values  are  interpreted  as
                 (x,y) pairs and A becomes a mapping function for the data.

       Acolor    The  color  for  curve  A.  The values 1-4 map to black, red,
                 green, and blue respectively.  A value of  0  turns  curve  A

       Adata     The point data for curve ’A’.  If Adata is set to the name of
                 a file, data is read and  interpreted  from  that  file.   If
                 Adata  is  set  to  a command (beginning with an exclamation,
                 ’!’), the output of the command is read as data.   Otherwise,
                 data  is  read  from  the  current  file.   Data  values  are
                 separated by white space and/or commas.  A semicolon  or  end
                 of file indicates the end of data.

       Alabel    The  label  for curve ’A’.  The curve label is printed in the
                 legend when a curve is defined.

       Alintype  The line type for curve ’A’, valued from 0 to 4.  A value  of
                 0  turns  line  drawing  off.   A  value  of 1 is solid, 2 is
                 dashed, 3 is dotted, and 4 is dot-dashed.

       Anpoints  The number of symbol points  for  curve  ’A’.   If  Adata  is
                 defined, all points will be connected with the selected curve
                 line, but only Anpoints  points  will  be  indicated  with  a
                 symbol.   This  prevents  messy  graphs  when large number of
                 points are defined.  If  A  is  defined  and  Adata  is  not,
                 Anpoints  is used along with xmin and xmax to determine which
                 x values to plot.

       Asymsize  The symbol radius for curve ’A’.  The default size is 100.  A
                 value of 0 turns symbols off.

       Asymtype  This  is  the  name of a segment in symfile which defines the
                 graphics symbol for curve ’A’.

       Athick    The line thickness for curve ’A’, valued  from  0  to  4.   A
                 thickness of 0 turns line drawing off.


       A graph file contains definitions for graph and curve variables.  These
       definitions fall one per line in the following formats:

            vreal        = expression       # real variable
            vfunction(x) = expression(x)    # function
            vstring      = "string"         # string variable
            vdata        = filename         # data file
            vdata        = "!command"       # data generator
            variable     = continued \
                    line                    # newline escaped
            vdata        =                  # data
                 v1 v2 v3 v4 ... ;

       Comments are preceded by a ’#’, and continue to the end  of  the  line.
       Except for comments, the newline can be escaped with a backslash.  Note
       that in the special case where data is contained in the graph  file,  a
       definition  will  continue over more than one line.  Data values can be
       separated by commas or white  space,  and  reading  continues  until  a
       semicolon is reached.  No comments are allowed in the data section of a

       An expression is an algebraic formula  containing  numbers,  variables,
       functions,  and  the standard operators {+,-,*,/,^,(,)} (see icalc(1)).
       Besides the variables described in the  last  section,  definitions  of
       intermediate  real variables and functions are allowed for convenience.
       They may be used in expressions of graph and curve variables.


       A file to graph the sine function is:

            title = "Sine Function from 0 to Pi"
            PI = 3.141592653589793
            A(x) = sin(x)
            xmin = 0
            xmax = PI
            Anpoints = 100

       Or, to graph selected points:

            title = "Sine Function at 0, .2, .6, and .8"
            A(x) = sin(x)
            Adata =
                 0 , .2
                 .6 , .8

       The commands to plot these files might be:

            bgraph -line sine1.plt | psmeta | lpr

            bgraph -curve +ymin -1 +ymax 1 sine2.plt | x11meta


       /usr/local/lib/meta/*.mta /usr/local/lib/meta/*.plt *.plt


       Greg Ward


       There is no mechanism provided for  undefining  a  variable.   An  axis
       mapping  function  which is not invertible (monotonically increasing or
       decreasing) confuses the program terribly.


       dgraph(1), gcomp(1), icalc(1), igraph(1), metafile(5), x11meta(1)