GRAPH(1)GRAPH(1)NAMEgraph - compile graphs into pic input
SYNOPSISgraph [ options ] [ filename ... ]
DESCRIPTIONgraph is a perl script which takes sets of X Y data and generates a
(human readable) pic program that will produce the graphed data. The
output is designed such that you can save it in a file and tweak it to
make it fit your document. Try one and look at the output. The output
is actually commented.
The graph is autosized and auto ticked.
The input data format is similar that of xgraph(1), i.e., 1 1 2 2 3 3
"sloped across
1 4 2 4 3 4 "straight across
CONTROL OPTIONS
You may set the graph title, the X title, and the Y title with the fol‐
lowing control sequences in the data stream: %T Graph title in +4 point
font %X X axis title and/or units in +2 point font %Y Y axis title
and/or units in +2 point font %fakemax-X <value> force graph to be
that big %fakemax-Y <value> force graph to be that big %fakemin-X
<value> force graph to be that small %fakemin-Y <value> force
graph to be that small
OPTIONS-rev reverse X/Y data sense (and titles). Note this is done
after processing any fudging of the input data stream(s)
(see -xk, -yk, -logx, etc below).
-below put data set titles below the graph rather than to the
right.
-close no extra space around the data's endpoints.
-qline connect the quartile center points.
-grid dotted line grid marks.
-nobox no box around whole graph.
-big make the graph take the whole page.
-medium make the graph take about 1/2 the page.
-small make the graph be small.
-grapheach draw each data set in its own graph.
-nolabels no X/Y/Title labels.
-nodatal no data set labels.
-nomarks do not mark each data point with distinct markers (end‐
points are still marked).
-k print values larger than 1000 as value/1000.
-xk multiply X input by 1024 (blech).
-yk multiply Y input by 1024 (blech).
-xm multiply X input by 1024*1024 (blech).
-ym multiply Y input by 1024*1024 (blech).
-logx convert X input into lag base 2 of X input.
-logy convert Y input into lag base 2 of Y input.
EXAMPLE
Workstation price performance from a Digital ad. Process with graph-rev workstations | groff -TX75
"%T Workstation Price / Performance, 6/93 "%X SPECINT 92 Performance
"%Y Price in $1000's 35 5 65 10 78 15 110 70 "Dec AXP line
25 4 25 8 38 16 48 21 52 23 64 27 "Sun SPARC line
QUARTILE FORMAT
Data points are x y1 y2 y3 y4 y5. You get a two lines from the first
two y values, a mark at the third, and another line from the last two.
SEE ALSOgtroff(1), gpic(1), perl(1).
BUGS
This should probably be called pic_graph or something like that.
This isn't done as much as I would like. It isn't integrated with the
groff preprocessor yet. It doesn't know about .GS/.GE things. I use
it to manually generate a pic file and then include that.
GRAPH(1)