Bring in some more man pages.
This commit is contained in:
parent
6cc703dc9a
commit
dfc67f9b6d
5 changed files with 1582 additions and 0 deletions
416
man/man1/grap.1
Normal file
416
man/man1/grap.1
Normal file
|
|
@ -0,0 +1,416 @@
|
|||
.TH GRAP 1
|
||||
.SH NAME
|
||||
grap \- pic preprocessor for drawing graphs
|
||||
.SH SYNOPSIS
|
||||
.B grap
|
||||
[
|
||||
.I file ...
|
||||
]
|
||||
.SH DESCRIPTION
|
||||
.I Grap
|
||||
is a
|
||||
.IR pic (1)
|
||||
preprocessor for drawing graphs on a typesetter.
|
||||
Graphs are surrounded by the
|
||||
.I troff
|
||||
`commands'
|
||||
.B \&.G1
|
||||
and
|
||||
.BR \&.G2 .
|
||||
Data are scaled and plotted,
|
||||
with tick marks supplied automatically.
|
||||
Commands exist to modify the frame,
|
||||
add labels, override the default ticks,
|
||||
change the plotting style,
|
||||
define coordinate ranges and transformations,
|
||||
and include data from files.
|
||||
In addition,
|
||||
.I grap
|
||||
provides the same loops, conditionals, and macro processing that
|
||||
.I pic
|
||||
does.
|
||||
.PP
|
||||
.BI frame
|
||||
.B ht
|
||||
.I e
|
||||
.B wid
|
||||
.I e
|
||||
.B top
|
||||
.B dotted
|
||||
.IR ... :
|
||||
Set the frame around the graph to specified
|
||||
.B ht
|
||||
and
|
||||
.BR wid ;
|
||||
default is 2 by 3 (inches).
|
||||
The line
|
||||
.I styles
|
||||
.RB ( dotted ,
|
||||
.BR dashed ,
|
||||
.BR invis ,
|
||||
.BR solid
|
||||
(default))
|
||||
of the
|
||||
.I sides
|
||||
.RB ( top ,
|
||||
.BR bot ,
|
||||
.BR left ,
|
||||
.BR right )
|
||||
of the frame can be set
|
||||
independently.
|
||||
.PP
|
||||
.B label
|
||||
.I side
|
||||
.B \&"a label"
|
||||
.B \&"as a set of strings"
|
||||
.IR adjust :
|
||||
Place label on specified side; default side is bottom.
|
||||
.I adjust
|
||||
is
|
||||
.B up
|
||||
(or
|
||||
.B down
|
||||
.B left
|
||||
.BR right )
|
||||
.I expr
|
||||
to shift default position;
|
||||
.B width
|
||||
.I expr
|
||||
sets the width explicitly.
|
||||
.PP
|
||||
.BI ticks
|
||||
.I side
|
||||
.B in
|
||||
.B at
|
||||
.IR "optname expr, expr, ..." :
|
||||
Put ticks on
|
||||
.I side
|
||||
at
|
||||
.I "expr, ...,
|
||||
and label with
|
||||
.I \&"expr"\f1.
|
||||
If any
|
||||
.I expr
|
||||
is followed by "...", label tick with "...",
|
||||
and turn off all automatic labels.
|
||||
If "..." contains
|
||||
.BR %f 's,
|
||||
they will be interpreted as
|
||||
.B printf
|
||||
formatting instructions for the tick value.
|
||||
Ticks point
|
||||
.B in
|
||||
or
|
||||
.B out
|
||||
(default out).
|
||||
Tick iterator: instead of
|
||||
.B at
|
||||
.IR \&... ,
|
||||
use
|
||||
.BI from
|
||||
.I expr
|
||||
.B to
|
||||
.I expr
|
||||
.B by
|
||||
.I "op expr
|
||||
where
|
||||
.I op
|
||||
is optionally
|
||||
.B +-*/
|
||||
for additive or multiplicative steps.
|
||||
.B by
|
||||
can be omitted, to give steps of size 1.
|
||||
If no ticks are requested, they are supplied automatically;
|
||||
suppress this with
|
||||
.B ticks
|
||||
.BR off .
|
||||
Automatic ticks normally
|
||||
leave a margin of 7% on each side; set this to anything by
|
||||
.B margin
|
||||
.B =
|
||||
.IR expr .
|
||||
.PP
|
||||
.B grid
|
||||
.I "side linedesc"
|
||||
.B at
|
||||
.IR "optname expr, expr, ..." :
|
||||
Draw grids perpendicular to
|
||||
.I side
|
||||
in style
|
||||
.I linedesc
|
||||
at
|
||||
.I "expr, ....\&
|
||||
Iterators and labels work as with ticks.
|
||||
.PP
|
||||
.B coord
|
||||
.I optname
|
||||
.B x
|
||||
.I "min, max"
|
||||
.B y
|
||||
.I "min, max"
|
||||
.B "log x
|
||||
.BR " log y" :
|
||||
Set range of coords and optional log scaling on either or both.
|
||||
This overrides computation of data range.
|
||||
Default value of
|
||||
.I optname
|
||||
is current coordinate system
|
||||
(each
|
||||
.B coord
|
||||
defines a new coordinate system).
|
||||
.PP
|
||||
.B plot
|
||||
.I \&"str"
|
||||
.B at
|
||||
.IR point ;
|
||||
.B
|
||||
.I \&"str"
|
||||
.B at
|
||||
.IR point :
|
||||
Put
|
||||
.I str
|
||||
at
|
||||
.IR point .
|
||||
Text position can be qualified with
|
||||
.BR rjust ,
|
||||
.BR ljust ,
|
||||
.BR above ,
|
||||
.BR below
|
||||
after "...".
|
||||
.PP
|
||||
.B line
|
||||
.B from
|
||||
.I point
|
||||
.B to
|
||||
.IR "point linedesc" :
|
||||
Draw line from here to there.
|
||||
.B arrow
|
||||
works in place of
|
||||
.BR line .
|
||||
.PP
|
||||
.B next
|
||||
.I optname
|
||||
.B at
|
||||
.IR "point linedesc" :
|
||||
Continue plot of data in
|
||||
.I optname to
|
||||
.IR point ;
|
||||
default is current.
|
||||
.PP
|
||||
.BI draw
|
||||
.IR "optname linedesc ..." :
|
||||
Set mode for
|
||||
.BR next :
|
||||
use this style from now on,
|
||||
and plot "..." at each point (if given).
|
||||
.PP
|
||||
.BI new
|
||||
.IR "optname linedesc ..." :
|
||||
Set mode for
|
||||
.BR next ,
|
||||
but disconnect from previous.
|
||||
.PP
|
||||
A list of numbers
|
||||
.I "x y1 y2 y3 ...
|
||||
is treated as
|
||||
.B plot
|
||||
.B bullet
|
||||
.B at
|
||||
.IR x,y1 ;
|
||||
.B plot
|
||||
.B bullet
|
||||
.B at
|
||||
.IR x,y2 ;
|
||||
etc., or as
|
||||
.B next
|
||||
.B at
|
||||
.I x,y1
|
||||
etc., if
|
||||
.B draw
|
||||
is specified.
|
||||
Abscissae of 1,2,3,... are provided if there is only one input number per line.
|
||||
.PP
|
||||
A
|
||||
point
|
||||
.I "optname expr, expr
|
||||
maps the point to the named coordinate system.
|
||||
A
|
||||
.I linedesc
|
||||
is one of
|
||||
.B dot
|
||||
.B dash
|
||||
.B invis
|
||||
.B solid
|
||||
optionally followed by an expression.
|
||||
.PP
|
||||
.BI define
|
||||
.I name
|
||||
.BI { whatever } \f1:
|
||||
Define a macro.
|
||||
There are macros already defined for standard plotting
|
||||
symbols like
|
||||
.BR bullet ,
|
||||
.BR circle ,
|
||||
.BR star ,
|
||||
.BR plus ,
|
||||
etc., in
|
||||
.BR /sys/lib/grap.defines ,
|
||||
which is included if it exists.
|
||||
.PP
|
||||
.I var
|
||||
.B =
|
||||
.IR expr :
|
||||
Evaluate an expression.
|
||||
Operators are
|
||||
.B=
|
||||
.B +
|
||||
.B -
|
||||
.B *
|
||||
and
|
||||
.BR / .
|
||||
Functions are
|
||||
.B log
|
||||
and
|
||||
.B exp
|
||||
(both base 10),
|
||||
.BR sin ,
|
||||
.BR cos ,
|
||||
.BR sqrt ;
|
||||
.B rand
|
||||
returns random number on [0,1);
|
||||
.BI max( e , e )\f1,
|
||||
.BI min( e , e )\f1,
|
||||
.BI int( e )\f1.
|
||||
.PP
|
||||
.B print
|
||||
.IR expr ;
|
||||
.B print
|
||||
\fL"\f2...\fL"\f1:
|
||||
As a debugging aid, print
|
||||
.I expr
|
||||
or
|
||||
.I string
|
||||
on the standard error.
|
||||
.PP
|
||||
.B copy
|
||||
\fL"\fIfile name\fL"\fR:
|
||||
Include this file right here.
|
||||
.PP
|
||||
.B copy
|
||||
.B thru
|
||||
.IR macro :
|
||||
Pass rest of input (until
|
||||
.BR \&.G2 )
|
||||
through
|
||||
.IR macro ,
|
||||
treating each field (non-blank, or "...") as an argument.
|
||||
.I macro
|
||||
can be the name of a macro previously defined,
|
||||
or the body of one in place, like
|
||||
.BR "/plot $1 at $2,$3/" .
|
||||
.PP
|
||||
.B copy
|
||||
.B thru
|
||||
.I macro
|
||||
.B until
|
||||
\fL"\fIstring\fL"\fR:
|
||||
Stop copy when input is
|
||||
.I string
|
||||
(left-justified).
|
||||
.PP
|
||||
.BI pic
|
||||
.IR "remainder of line" :
|
||||
Copy to output with leading blanks removed.
|
||||
.PP
|
||||
.BI graph
|
||||
.IR "Name pic-position" :
|
||||
Start a new frame, place it at specified position,
|
||||
e.g.,
|
||||
.B graph
|
||||
.B Thing2
|
||||
.BR "with .sw at Thing1.se + (0.1,0)" .
|
||||
.I Name
|
||||
must be capitalized to keep
|
||||
.I pic
|
||||
happy.
|
||||
.PP
|
||||
.BI \&. "anything at beginning of
|
||||
.IR line :
|
||||
Copied verbatim.
|
||||
.PP
|
||||
.B sh
|
||||
.BI % anything
|
||||
.BR % :
|
||||
Pass everything between the
|
||||
.BR % 's
|
||||
to the shell;
|
||||
as with macros,
|
||||
.B %
|
||||
may be any character and
|
||||
.I anything
|
||||
may include newlines.
|
||||
.PP
|
||||
.B #
|
||||
.IR anything :
|
||||
A comment, which is discarded.
|
||||
.PP
|
||||
Order is mostly irrelevant; no category is mandatory.
|
||||
Any arguments on the
|
||||
.B \&.G1
|
||||
line are placed on the generated
|
||||
.B \&.PS
|
||||
line for
|
||||
.IR pic .
|
||||
.SH EXAMPLES
|
||||
.EX
|
||||
.ps -1
|
||||
.vs -1
|
||||
\&.G1
|
||||
frame ht 1 top invis right invis
|
||||
coord x 0, 10 y 1, 3 log y
|
||||
ticks left in at 1 "bottommost tick", 2,3 "top tick"
|
||||
ticks bot in from 0 to 10 by 2
|
||||
label bot "silly graph"
|
||||
label left "left side label" "here"
|
||||
grid left dashed at 2.5
|
||||
copy thru / circle at $1,$2 /
|
||||
1 1
|
||||
2 1.5
|
||||
3 2
|
||||
4 1.5
|
||||
10 3
|
||||
\&.G2
|
||||
.G1
|
||||
frame ht 1 top invis right invis
|
||||
coord x 0, 10 y 1, 3 log y
|
||||
ticks left in at 1 "bottommost tick", 2,3 "top tick"
|
||||
ticks bot in from 0 to 10 by 2
|
||||
label bot "silly graph"
|
||||
label left "left side label" "here"
|
||||
grid left dashed at 2.5
|
||||
copy thru / circle at $1,$2 /
|
||||
1 1
|
||||
2 1.5
|
||||
3 2
|
||||
4 1.5
|
||||
10 3
|
||||
.G2
|
||||
.ps
|
||||
.vs
|
||||
.EE
|
||||
.SH FILES
|
||||
.TF /sys/lib/grap.defines
|
||||
.TP
|
||||
.B /sys/lib/grap.defines
|
||||
definitions of standard plotting characters, e.g., bullet
|
||||
.SH SOURCE
|
||||
.B /sys/src/cmd/grap
|
||||
.SH "SEE ALSO"
|
||||
.IR pic (1),
|
||||
.IR troff (1)
|
||||
.br
|
||||
J. L. Bentley and B. W. Kernighan,
|
||||
``GRAP\(emA Language for Typesetting Graphs'',
|
||||
.I
|
||||
Unix Research System Programmer's Manual,
|
||||
Tenth Edition, Volume 2.
|
||||
Loading…
Add table
Add a link
Reference in a new issue