Table of Contents
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 off.
- 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 dotdashed.
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 file.
An expression is an algebraic formula containing numbers,
variables, functions, and the standard operators {+,,*,/,^,(,)}
(see calc(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 | impress | ipr
bgraph -curve +ymin -1 +ymax 1 sine2.plt | t4014
/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.
calc(1), dgraph(1), gcomp(1), igraph(1), impress(1),
metafile(5), mx80(1), mt160l(1), t4014(1), xmeta(1)
Header and Footer
BGRAPH(1) RADIANCE (11/15/93) BGRAPH(1)
Page 1 (printed 7/17/96)
Table of Contents