1 .ds dQ /usr/lib/postscript
5 \- matrix display program for PostScript printers
12 reads a series of floating point numbers from
14 translates them into a PostScript gray scale image,
15 and writes the results on the standard output.
16 In a typical application the numbers might be
17 the elements of a large matrix,
18 written in row major order,
19 while the printed image could help locate
20 patterns in the matrix.
27 the standard input is read.
33 Pack the bitmap in the output file using
36 A value of 0 turns off all packing of the output file.
45 By default only one copy is printed.
48 Sets the default matrix dimensions for all input
54 string can be given as rows or rows\^\(mu\^columns.
55 If columns is omitted it will be set to rows.
58 assumes each matrix is square and sets the number of rows
59 and columns to the square root of the number of elements in
64 is a comma- or space-separated string of integers, each lying between
66 that assigns PostScript gray scales to the regions of the real line
70 255 corresponds to white and 0 to black.
72 assigns a default gray scale that omits white (i.e., 255) and gets
73 darker as the regions move from left to right along the real line.
77 is a comma- or space-separated string of
79 floating point numbers that
80 partition the real line into
85 must be given in increasing numerical order.
86 The partitions are used to map floating point numbers read from the input
88 into gray scale integers that are assigned automatically by
90 or arbitrarily selected using the
95 is ``\*(mB\-1,0,1\fP'' which partions the real line into 7 regions.
98 Magnify each logical page by the factor
100 Pages are scaled uniformly about the origin,
101 which by default is located at the center of
103 The default magnification is 1.0.
108 logical pages on each piece of paper,
111 can be any positive integer.
117 Print pages whose numbers are given in the comma separated
119 The list contains single numbers
125 means the lowest numbered page, a missing
132 in either \*(mBportrait\fP or \*(mBlandscape\fP
134 Only the first character of
143 is a comma- or space-separated list of four positive integers that
144 select the upper left and lower right corners of a submatrix from
147 Row and column indices start at 1 in the upper left corner and the
150 are assumed to be written in row major order.
151 By default the entire matrix is displayed.
156 inches along the positive x axis.
158 coordinate system has the origin fixed at the
159 center of the page, with positive
160 x to the right and positive y up the page.
163 moves everything right.
164 The default offset is 0 inches.
169 inches along the positive y axis.
172 moves everything up the page.
173 The default offset is 0.
176 Set the character encoding for text fonts to
181 .MI \*(dQ/ name .enc \f1.
182 A nonexistent encoding file is silently ignored.
183 The default selects file
184 .MR \*(dQ/Default.enc .
189 as the PostScript prologue.
192 .MR \*(dQ/postmd.ps .
194 Three options allow insertion of arbitrary PostScript
195 at controlled points in the translation process:
202 must contain legitimate PostScript.
209 must be legitimate PostScript.
216 on a per page or global basis.
219 string can be given as
221 .IM request : page\f1\|,
223 .IM request : page : file\f1\|.
226 is omitted or given as 0, the request
227 applies to all pages.
230 is omitted, the request
232 .MR \*(dQ/ps.requests .
234 Only one matrix is displayed on each logical page,
235 and each of the input
237 must contain complete descriptions of exactly one matrix.
238 Matrix elements are floating point numbers arranged in row major order in
240 White space, including newlines, is not used to determine matrix
244 assumes each matrix is square and sets the number of rows and columns
245 to the square root of the number of elements in the input file.
246 Supplying default dimensions on the command line using the
248 option overrides this default behavior, and in that case the
249 dimensions apply to all input
252 An optional header can be supplied with each input file and is used
253 to set the matrix dimensions, the partition of the real line, the gray scale
254 map, and a window into the matrix.
255 The header consists of keyword/value pairs, each on a separate line.
256 It begins on the first line of each input file and ends with the
257 first unrecognized string, which should be the first matrix element.
258 Values set in the header take precedence, but only apply to the
260 Recognized header keywords are
266 The syntax of the value string that follows each keyword parallels what is
277 initially contains the 1000 numbers
278 in a 20\(mu50 matrix.
279 Then the command line:
281 postmd -d20x50 -i"-100 100" -g0,128,254,128,0 \f2file
283 and prepending the header,
286 interval -100.0 .100e+3
287 grayscale 0 128 254 128 0
291 and typing the command line:
295 produce exactly the same output.
296 The interval list partitions the real line into five regions and
297 the gray scale list maps numbers less than \-100 or greater than 100
298 into 0 (i.e., black), numbers equal to \-100 or 100 into 128
300 black), and numbers between \-100 and 100 into 254 (i.e., almost white).
302 A 0 exit status is returned if
304 were successfully processed.
306 The largest matrix that can be adequately displayed is a function
307 of the interval and gray scale lists, the printer resolution,
309 A 600\(mu600 matrix is an optimistic upper bound for a two element interval
310 list (i.e. five regions) using 8.5\(mu11 inch paper on a 300 dpi printer.
312 Using white (i.e., 255) in a gray scale list is not recommended and will not
313 show up in the legend and bar graph that
315 displays below each image.
321 .MW \*(dQ/ps.requests