diff options
Diffstat (limited to 'static/unix-v10/man1/grap.1')
| -rw-r--r-- | static/unix-v10/man1/grap.1 | 400 |
1 files changed, 400 insertions, 0 deletions
diff --git a/static/unix-v10/man1/grap.1 b/static/unix-v10/man1/grap.1 new file mode 100644 index 00000000..b380401e --- /dev/null +++ b/static/unix-v10/man1/grap.1 @@ -0,0 +1,400 @@ +.TH GRAP 1 +.CT 1 writing_troff graphics +.SH NAME +grap \(mi 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 that is enclosed is 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 +.I \&...: +Set the frame around the graph to specified +.B ht +and +.BR wid ; +default is 2 by 3 (inches). +The default mode applies to all four sides; +.BR top , +.BR bot , +.BR left , +or +.B right +can be set to +.BR dotted , +.BR dashed , +.BR invis , +or +.BR solid +independently. +.PP +.B label +.I side +.B \&"a label" +.B \&"as a set of strings" +.I 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 +.I "optname expr, expr, ...: +Put ticks on +.I side +at +.I "expr, ..., +and label with +.I \&"expr". +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 +.I \&..., +use +.BI from +.I expr +.B to +.I expr +.B by +.I "o expr +where +.I o +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 = +.I expr. +.PP +.B grid +.I "side linedesc" +.B at +.I "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 +.I point: +Put +.I str +at +.I 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 +.I "point linedesc: +Draw line from here to there. +.B arrow +works in place of +.BR line . +.PP +.B next +.I optname +.B at +.I "point linedesc: +Continue plot of data in +.I optname to +.IR point ; +default is current. +.PP +.BI draw +.I "optname linedesc...:" +Set mode for +.BR next : +use this style from now on, +and plot "..." at each point (if given). +.PP +.BI new +.I "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 } : +Define a macro. +There are macros already defined for standard plotting +symbols like +.BR bullet , +.BR circle , +.BR star , +.BR plus , +etc., in +.FR /usr/lib/grap.defines , +which is included if it exists. +.PP +.I var +.B = +.I expr: +Evaluate an expression. +Operators are +.B= +.B + +.B - +.B * +and +.B / . +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 ) , +.BI min( e , e ) , +.BI int( e ) . +.PP +.B print +.IR expr ; +.B print +.I \&"...:" +As a debugging aid, print +.I expr or +.I string +on the standard error. +.PP +.B copy +\f5"\fIfilename\f5"\fR +.I : +Include this file right here. +.PP +.B copy +.B thru +.I 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 +.B \&" +.I string +.B \&" +: +Stop copy when input is +.I string +(left-justified). +.PP +.BI pic +.I "remainder of line: +Copy to output with leading blanks removed. +.PP +.BI graph +.I "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 line: +Copied verbatim. +.PP +.B sh +.BI % anything % : +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 # +.I 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 +.I pic. +.SH +EXAMPLES +.EX +.ps -1 +.vs -1 +\&.G1 +frame top invis right invis +coord x 0, 10 y 1, 5 log y +ticks left in at 1 "bottommost tick", 2,3,4,5 "top tick" +ticks bot in from 0 to 10 by 2 +label bot "this is a" "silly graph" +label left "left side label" "here" +grid bot dotted at 2,4,6,8 +grid left dashed at 2.5 +copy thru / circle at $1,$2 / +1 1 +2 1.5 +3 2 +4 1.5 +10 5 +\&.G2 +.ps +.vs +.EE +.SH FILES +.TF /usr/lib/grap.defines +.TP +.F /usr/lib/grap.defines +definitions of standard plotting characters, e.g., bullet +.SH "SEE ALSO" +.IR graph (1), +.IR pic (1), +.IR plot (3) +.br +J. L. Bentley and B. W. Kernighan, +.I "GRAP \(em A Language for Typesetting Graphs, +CSTR 114, 1984 |
