home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-01-05 | 58.4 KB | 2,140 lines |
- diff -cr ./docs/gnuplot.doc ../gnuplot2.02/docs/gnuplot.doc
- *** ./docs/gnuplot.doc Tue Sep 18 14:58:01 1990
- --- ../gnuplot2.02/docs/gnuplot.doc Thu Nov 29 11:04:53 1990
- ***************
- *** 5,11
- are not the same as those written in CAPS). All command names may be
- abbreviated, as long as the abbreviation is not ambiguous. Any number
- of commands may appear on a line, separated by semicolons (;).
- !
- Any command-line arguments are assumed to be names of files containing
- gnuplot commands. Each file is loaded with the `load` command, in the
- order specified. Gnuplot exits after the last file is processed.
-
- --- 5,11 -----
- are not the same as those written in CAPS). All command names may be
- abbreviated, as long as the abbreviation is not ambiguous. Any number
- of commands may appear on a line, separated by semicolons (;).
- !
- Any command-line arguments are assumed to be names of files containing
- gnuplot commands, with the exception of standard X11 arguments, which
- are processed first. Each file is loaded with the `load` command, in the
- ***************
- *** 7,13
- of commands may appear on a line, separated by semicolons (;).
-
- Any command-line arguments are assumed to be names of files containing
- ! gnuplot commands. Each file is loaded with the `load` command, in the
- order specified. Gnuplot exits after the last file is processed.
-
- Commands may extend over several input lines, by ending each line but
-
- --- 7,14 -----
- of commands may appear on a line, separated by semicolons (;).
-
- Any command-line arguments are assumed to be names of files containing
- ! gnuplot commands, with the exception of standard X11 arguments, which
- ! are processed first. Each file is loaded with the `load` command, in the
- order specified. Gnuplot exits after the last file is processed.
-
- Commands may extend over several input lines, by ending each line but
- ***************
- *** 9,15
- Any command-line arguments are assumed to be names of files containing
- gnuplot commands. Each file is loaded with the `load` command, in the
- order specified. Gnuplot exits after the last file is processed.
- !
- Commands may extend over several input lines, by ending each line but
- the last with a backslash (\). The backslash must be the LAST
- character on each line. The effect is as if the backslash and newline
-
- --- 10,16 -----
- gnuplot commands, with the exception of standard X11 arguments, which
- are processed first. Each file is loaded with the `load` command, in the
- order specified. Gnuplot exits after the last file is processed.
- !
- Commands may extend over several input lines, by ending each line but
- the last with a backslash (\). The backslash must be the LAST
- character on each line. The effect is as if the backslash and newline
- ***************
- *** 16,22
- were not there. That is, no white space is implied, nor is a comment
- terminated. Therefore, commenting out a continued line comments out
- the entire command (see `comment`).
- !
- In this documentation, curly braces ({}) denote optional arguments to
- many commands.
-
-
- --- 17,23 -----
- were not there. That is, no white space is implied, nor is a comment
- terminated. Therefore, commenting out a continued line comments out
- the entire command (see `comment`).
- !
- In this documentation, curly braces ({}) denote optional arguments to
- many commands.
-
- ***************
- *** 19,25
-
- In this documentation, curly braces ({}) denote optional arguments to
- many commands.
- !
- For help on any topic, type 'help' followed by the name of the topic.
- 2 cd
- ?cd
-
- --- 20,26 -----
-
- In this documentation, curly braces ({}) denote optional arguments to
- many commands.
- !
- For help on any topic, type 'help' followed by the name of the topic.
- 2 cd
- ?cd
- ***************
- *** 58,64
-
- On Unix and MS-DOS, GNUHELP may be defined to be the pathname of the
- HELP file (gnuplot.gih).
- !
- On VMS, the symbol GNUPLOT$HELP should be defined as the name of
- the help library for gnuplot.
-
-
- --- 59,65 -----
-
- On Unix and MS-DOS, GNUHELP may be defined to be the pathname of the
- HELP file (gnuplot.gih).
- !
- On VMS, the symbol GNUPLOT$HELP should be defined as the name of
- the help library for gnuplot.
-
- ***************
- *** 446,452
-
- load 'work.gnu'
- load "func.dat"
- !
- The `load` command is performed implicitly on any file names given as
- arguments to gnuplot. These are loaded in the order specified, and
- then gnuplot exits.
-
- --- 447,453 -----
-
- load 'work.gnu'
- load "func.dat"
- !
- The `load` command is performed implicitly on any file names given as
- arguments to gnuplot. These are loaded in the order specified, and
- then gnuplot exits.
- ***************
- *** 481,488
-
- plot {ranges} <function> {title} {style} {, <function> {title} {style}...}
-
- ! Where <function> is either a mathematical expression or the name of a
- ! data file enclosed in quotes. User-defined functions and variables
- may also be defined here.
-
- Curly braces {,} denote optional items.
-
- --- 482,490 -----
-
- plot {ranges} <function> {title} {style} {, <function> {title} {style}...}
-
- ! Where <function> is either a mathematical expression, the name of a
- ! data file enclosed in quotes, or a pair of mathematical expressions in
- ! the case of parametric functions. User-defined functions and variables
- may also be defined here.
-
- Curly braces {,} denote optional items.
- ***************
- *** 508,514
- be specified either as an X and Y value separated by blank space, or
- as just the Y value, in which case the program will use the number
- of the coordinate as the X value. Coordinate numbers start at 0
- ! and are incremented for each data point read. Lines beginning with #
- (or ! on VMS) will be treated as comments and ignored.
-
- NOTE that blank lines cause a break in the input, and if the plot
-
- --- 510,517 -----
- be specified either as an X and Y value separated by blank space, or
- as just the Y value, in which case the program will use the number
- of the coordinate as the X value. Coordinate numbers start at 0
- ! and are incremented for each data point read. To specify other
- ! formats, see `plot datafile using`. Lines beginning with #
- (or ! on VMS) will be treated as comments and ignored.
-
- NOTE that blank lines cause a break in the input, and if the plot
- ***************
- *** 510,516
- of the coordinate as the X value. Coordinate numbers start at 0
- and are incremented for each data point read. Lines beginning with #
- (or ! on VMS) will be treated as comments and ignored.
- !
- NOTE that blank lines cause a break in the input, and if the plot
- style is `lines` or `linespoints` (see `plot style`) there will be no
- line drawn between the preceding and following points. This does not
-
- --- 513,519 -----
- and are incremented for each data point read. To specify other
- formats, see `plot datafile using`. Lines beginning with #
- (or ! on VMS) will be treated as comments and ignored.
- !
- NOTE that blank lines cause a break in the input, and if the plot
- style is `lines` or `linespoints` (see `plot style`) there will be no
- line drawn between the preceding and following points. This does not
- ***************
- *** 530,535
- 1975 34
- 1980 24
- 1985 10
- 3 ranges
- ?plot ranges
- ?ranges
-
- --- 533,596 -----
- 1975 34
- 1980 24
- 1985 10
- + 4 using
- + ?plot datafile using
- + ?plot data-file using
- + ?using
- + The format of data within a file can be selected with the `using`
- + option. The `xy` and `yx` specify the order of the `x` and `y`
- + variables in the data file. To reverse the variables specify `yx`.
- + To specify that the datafile should contain one variable specify `y`.
- +
- + Syntax:
- +
- + plot "datafile" { using { xy | yx | y } {"scanf string"} } ...
- +
- + If the `xy`, `yx` or `y` option is omitted, `xy` is used.
- + If the scanf string is omitted, the default of `"%f%f"` is used.
- +
- + Examples:
- +
- + plot "MyData" using yx "%*f%f%*20[^\n]%f" with lines
- + This causes data to be read from the file "MyData" using the format
- + `yx "%*f%f%*20[^\n]%f"`. The meaning of this format is: `%*f`
- + ignore the first number, `%f` then read in the second and assign to y
- + (the `yx` option of using), `%*20[^\n]` then ignore 20 non-newline
- + characters, `%f` then read in the x value.
- +
- + plot "MyData" using "%f%f", "MyData" using "%f%*f%f"
- + Causes gnuplot to plot the second and third columns of MyData versus
- + the first column.
- +
- + Note: gnuplot first reads a line of the data file into a buffer and
- + then does a
- + sscanf(input_buffer, scanf_string, &x, &y);
- + where `x` and `y` are of type `float`. Any scanf string that specifies
- + two `float` numbers may be used.
- + 3 parametric
- + ?plot parametric
- + ?parametric
- + When in parametric mode (`set parametric`) mathematical expressions must
- + be given in pairs:
- + plot sin(t),t**2
- +
- + Data files are plotted as before, except the parametric function
- + must be fully specified before a data file is given as a plot. In
- + other words, the x parametric function (sin(t) above) and the y
- + parametric function (t**2 above) must not be interrupted with any
- + modifiers or data functions; doing so will generate a syntax error
- + stating that the parametric function is not fully specified.
- +
- + Ranges take on a different meaning when in parametric mode. The
- + first specifiable range on the plot command is the trange, the
- + next the xrange, and the last is the yrange. The following plot
- + shows setting the trange to [-pi:pi], the xrange to [-1.3:1.3]
- + and the yrange to [-1:1] for the duration of the plot:
- + plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2
- +
- + Other modifiers, such as `with` and `title` are required after
- + the function has been fully specified:
- + plot sin(t),t**2 with linespoints title 'Parametric example'
- 3 ranges
- ?plot ranges
- ?ranges
- ***************
- *** 629,635
- This plots sin(x) and cos(x) with linespoints, using the
- same line type but different point types:
- plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
- !
- This plots file "data" with points style 3:
- plot "data" with points 1 3
- Note that the line style must be specified in order to specify the
-
- --- 690,696 -----
- This plots sin(x) and cos(x) with linespoints, using the
- same line type but different point types:
- plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
- !
- This plots file "data" with points style 3:
- plot "data" with points 1 3
- Note that the line style must be specified in order to specify the
- ***************
- *** 742,748
- arrow. To change any attribute of an existing arrow, use the `set
- arrow` command with the appropriate tag, and specify the parts of the
- arrow to be changed.
- !
- Arrows outside the plotted boundaries are permitted but may cause
- device errors; use at your own risk.
-
-
- --- 803,809 -----
- arrow. To change any attribute of an existing arrow, use the `set
- arrow` command with the appropriate tag, and specify the parts of the
- arrow to be changed.
- !
- Arrows outside the plotted boundaries are permitted but may cause
- device errors; use at your own risk.
-
- ***************
- *** 796,802
-
- This disables autoscaling of the X and Y axes.
- set noautoscale
- !
- This disables autoscaling of the X axis only.
- set noautoscale x
- 3 clip
-
- --- 857,863 -----
-
- This disables autoscaling of the X and Y axes.
- set noautoscale
- !
- This disables autoscaling of the X axis only.
- set noautoscale x
- 4 parametric mode
- ***************
- *** 799,804
-
- This disables autoscaling of the X axis only.
- set noautoscale x
- 3 clip
- ?set clip
- ?set noclip
-
- --- 860,890 -----
-
- This disables autoscaling of the X axis only.
- set noautoscale x
- + 4 parametric mode
- + ?autoscale parametric
- + ?set autoscale t
- + When in parametric mode (`set parametric`) the xrange is as
- + fully scalable as the yrange. In other words, in parametric
- + mode the X axis can be automatically scaled to fit the range
- + of the parametric function that is being plotted. Of course,
- + the Y axis can also be automatically scaled just as in the
- + non-parametric case. If autoscaling on the X axis is not set,
- + the current X range is used.
- +
- + When there is a mix of data files and functions, the xrange of
- + the functions is selected as that of the data files if autoscale
- + is true for X. While this keeps the behavior compatible with
- + non-parametric plotting, it may not be retained in the future.
- + The problem is that, in parametric mode, the x and y ranges are
- + not as distinguishable as in the non-parametric mode and this
- + behavior may not be the most useful.
- +
- + For completeness sake a last command `set autoscale t` is accepted.
- + However, the effect of this "scaling" is very minor. When
- + gnuplot determines that the t range would be empty it makes a
- + small adjustment if autoscaling is true. Otherwise, gnuplot
- + gives an error. Such behavior may, in fact, not be very useful
- + and the command `set autoscale t` is certainly questionable.
- 3 clip
- ?set clip
- ?set noclip
- ***************
- *** 815,821
- Syntax:
- set clip points
- set noclip points
- !
- GNUPLOT can also clip lines that connect a point that is in range
- with a point that is out of range. The default is to draw the
- in-range portion of such lines (i.e., to "clip" them). With the
-
- --- 901,907 -----
- Syntax:
- set clip points
- set noclip points
- !
- GNUPLOT can also clip lines that connect a point that is in range
- with a point that is out of range. The default is to draw the
- in-range portion of such lines (i.e., to "clip" them). With the
- ***************
- *** 826,832
- Syntax:
- set clip one
- set noclip one
- !
- GNUPLOT does not show lines that are wholly out of range. Some lines
- may have both endpoints out of range, but pass through the plotting
- area. By default, GNUPLOT does not draw these lines (`set noclip
-
- --- 912,918 -----
- Syntax:
- set clip one
- set noclip one
- !
- GNUPLOT does not show lines that are wholly out of range. Some lines
- may have both endpoints out of range, but pass through the plotting
- area. By default, GNUPLOT does not draw these lines (`set noclip
- ***************
- *** 831,837
- may have both endpoints out of range, but pass through the plotting
- area. By default, GNUPLOT does not draw these lines (`set noclip
- two`). They may be drawn (and clipped) with `set clip two`.
- !
- Syntax:
- set clip two
- set noclip two
-
- --- 917,923 -----
- may have both endpoints out of range, but pass through the plotting
- area. By default, GNUPLOT does not draw these lines (`set noclip
- two`). They may be drawn (and clipped) with `set clip two`.
- !
- Syntax:
- set clip two
- set noclip two
- ***************
- *** 835,841
- Syntax:
- set clip two
- set noclip two
- !
- To check the state of all forms of clipping, use
- show clip
-
-
- --- 921,927 -----
- Syntax:
- set clip two
- set noclip two
- !
- To check the state of all forms of clipping, use
- show clip
-
- ***************
- *** 838,844
-
- To check the state of all forms of clipping, use
- show clip
- !
- The following forms are also permitted. These allow backward
- compatibility with older versions.
- set clip
-
- --- 924,930 -----
-
- To check the state of all forms of clipping, use
- show clip
- !
- The following forms are also permitted. These allow backward
- compatibility with older versions.
- set clip
- ***************
- *** 966,972
- label. To change any attribute of an existing label, use the `set
- label` command with the appropriate tag, and specify the parts of the
- label to be changed.
- !
- By default, the text is placed flush left against point x,y. If you
- want to adjust the way the label is positioned with respect to the
- point x,y, add the parameter <justification>, which may be `left`,
-
- --- 1052,1058 -----
- label. To change any attribute of an existing label, use the `set
- label` command with the appropriate tag, and specify the parts of the
- label to be changed.
- !
- By default, the text is placed flush left against point x,y. If you
- want to adjust the way the label is positioned with respect to the
- point x,y, add the parameter <justification>, which may be `left`,
- ***************
- *** 990,996
- set nolabel
- To show all labels (in tag order) use:
- show label
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 logscale
- ?set logscale
-
- --- 1076,1082 -----
- set nolabel
- To show all labels (in tag order) use:
- show label
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 logscale
- ?set logscale
- ***************
- *** 1041,1046
-
- The filename must be enclosed in quotes. If the filename is
- omitted, output will be sent to the standard output.
- 3 polar
- ?set polar
- ?show polar
-
- --- 1127,1160 -----
-
- The filename must be enclosed in quotes. If the filename is
- omitted, output will be sent to the standard output.
- + 3 parametric
- + ?set parametric
- + ?show parametric
- + ?parametric
- + The `set parametric` command changes the meaning of the plot from
- + normal functions to parametric functions. The command
- + `set noparametric` changes the plotting style back to normal,
- + single-valued expression plotting.
- +
- + Parametric functions are determined by a pair of functions
- + operating on a `parameter`, such as sin(t),cos(t) (which describes
- + a circle if `t` ranges over [-pi:pi]). Hence it takes two
- + parametric function specifications in terms of the parametric
- + dummy argument to describe a single graph.
- +
- + The total set of possible plots is a superset of the simple f(x)
- + style plots, since the two functions can describe both the
- + x and y values to be computed separately. In fact, plots of
- + the type t,f(t) are equivalent to those produced with f(x) since
- + the x values are computed with just the identity function. Note
- + that the order the parametric function is specified is xfunction,
- + yfunction and that each operates over the common parametric domain.
- +
- + Also, the `set parametric` function implies a new range of values.
- + Whereas the normal f(x) style plotting assumes an xrange and yrange,
- + the parametric mode additionally specifies a trange. The trange
- + may be specified directly with `set trange`, by specifying the
- + range on the plot command, or indirectly with `set autoscale t`.
- 3 polar
- ?set polar
- ?show polar
- ***************
- *** 1112,1118
- set size 0.5,0.5
- To show the size use:
- show size
- !
- For the LaTeX and Fig terminals the default size (scale factor 1,1)
- is 5 inches wide by 3 inches high. Note that the size of the plot
- includes the space used by the labels; the plotting area itself is
-
- --- 1226,1232 -----
- set size 0.5,0.5
- To show the size use:
- show size
- !
- For the LaTeX and Fig terminals the default size (scale factor 1,1)
- is 5 inches wide by 3 inches high. Note that the size of the plot
- includes the space used by the labels; the plotting area itself is
- ***************
- *** 1188,1194
-
- The first clears the title (default).
- The second form sets the title to "title-text" (without the quotes).
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 variables
- ?show variables
-
- --- 1302,1308 -----
-
- The first clears the title (default).
- The second form sets the title to "title-text" (without the quotes).
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 trange
- ?set trange
- ***************
- *** 1190,1195
- The second form sets the title to "title-text" (without the quotes).
-
- The Imagen driver allows \\ in a string to specify a newline.
- 3 variables
- ?show variables
- The `show variables` command lists all user-defined variables and
-
- --- 1304,1331 -----
- The second form sets the title to "title-text" (without the quotes).
-
- The Imagen driver allows \\ in a string to specify a newline.
- + 3 trange
- + ?set trange
- + ?show trange
- + ?trange
- + The `set trange` command sets the parametric range used to compute
- + x and y values when in parametric mode. If not in parametric mode
- + (see `set parametric`) then this range is not used. This command
- + does not affect XY autoscaling or XY ranges.
- +
- + This range may also be specified on the `plot` command line when
- + in parametric mode.
- +
- + Syntax:
- + set trange [{<tmin> : <tmax>}]
- +
- + Where <tmin> and <tmax> terms are expressions or constants.
- +
- + Both the <tmin> and <tmax> terms are optional. Anything omitted will
- + not be changed, so
- + set trange [:10]
- + changes tmax to 10 without affecting tmin.
- + 3 xtics
- 3 variables
- ?show variables
- The `show variables` command lists all user-defined variables and
- ***************
- *** 1211,1217
-
- The first clears the x-axis label (default).
- The second form sets the x-axis label to "label" (without the quotes).
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 xrange
- ?set xrange
-
- --- 1347,1353 -----
-
- The first clears the x-axis label (default).
- The second form sets the x-axis label to "label" (without the quotes).
- !
- The Imagen driver allows \\ in a string to specify a newline.
- 3 xrange
- ?set xrange
- ***************
- *** 1241,1247
- xtics` and `set noxtics` command. The x-axis tic marks may be turned
- off with the `set noxtics` command. They may be turned on (the
- default state) with `set xtics`.
- !
- If you prefer your own series of tic marks, you may use the form
- set xtics <start>, <incr>{, <end>}
- The curly braces indicate that the <end> parameter is optional.
-
- --- 1377,1383 -----
- xtics` and `set noxtics` command. The x-axis tic marks may be turned
- off with the `set noxtics` command. They may be turned on (the
- default state) with `set xtics`.
- !
- If you prefer your own series of tic marks, you may use the form
- set xtics <start>, <incr>{, <end>}
- The curly braces indicate that the <end> parameter is optional.
- ***************
- *** 1251,1257
- increment may be negative. Example:
- set xtics 0,.5,10
- makes tics 0, 0.5, 1, 1.5, ..., 9.5, 10.
- !
- If you need arbitrary tic positions, or non-numeric tic labels,
- any non-empty set of tic positions and labels may be given with this
- format:
-
- --- 1387,1393 -----
- increment may be negative. Example:
- set xtics 0,.5,10
- makes tics 0, 0.5, 1, 1.5, ..., 9.5, 10.
- !
- If you need arbitrary tic positions, or non-numeric tic labels,
- any non-empty set of tic positions and labels may be given with this
- format:
- ***************
- *** 1266,1272
- set xtics ("low" 0, "medium" 50, "high" 100)
- set xtics (1,2,4,8,16,32,64,128,256,512,1024)
- set xtics ("bottom" 0, "" 10, "top" 20)
- !
- Tics will only be plotted when in range.
-
- The `set ytics` and `set noytics` commands work identically.
-
- --- 1402,1408 -----
- set xtics ("low" 0, "medium" 50, "high" 100)
- set xtics (1,2,4,8,16,32,64,128,256,512,1024)
- set xtics ("bottom" 0, "" 10, "top" 20)
- !
- Tics will only be plotted when in range.
-
- The `set ytics` and `set noytics` commands work identically.
- ***************
- *** 1268,1274
- set xtics ("bottom" 0, "" 10, "top" 20)
-
- Tics will only be plotted when in range.
- !
- The `set ytics` and `set noytics` commands work identically.
- See also `set format` command.
- 3 ylabel
-
- --- 1404,1410 -----
- set xtics ("bottom" 0, "" 10, "top" 20)
-
- Tics will only be plotted when in range.
- !
- The `set ytics` and `set noytics` commands work identically.
- See also `set format` command.
- 3 xzeroaxis
- ***************
- *** 1271,1276
-
- The `set ytics` and `set noytics` commands work identically.
- See also `set format` command.
- 3 ylabel
- ?set ylabel
- ?show ylabel
-
- --- 1407,1434 -----
-
- The `set ytics` and `set noytics` commands work identically.
- See also `set format` command.
- + 3 xzeroaxis
- + ?set xzeroaxis
- + ?show xzeroaxis
- + ?xzeroaxis
- + `set xzeroaxis` draws the x-axis. By default, this option is on.
- + `set noxzeroaxis` causes gnuplot to omit the x-axis.
- +
- + Syntax:
- + set xzeroaxis
- + set noxzeroaxis
- + show xzeroaxis
- + 3 yzeroaxis
- + ?set yzeroaxis
- + ?show yzeroaxis
- + ?yzeroaxis
- + `set yzeroaxis` draws the y-axis. By default, this option is on.
- + `set noyzeroaxis` causes gnuplot to omit the y-axis.
- +
- + Syntax:
- + set yzeroaxis
- + set noyzeroaxis
- + show yzeroaxis
- 3 ylabel
- ?set ylabel
- ?show ylabel
- ***************
- *** 1338,1343
- Syntax:
- set zero <expression>
- show zero
- 2 shell
- ?shell
- The `shell` command spawns an interactive shell. To return to
-
- --- 1496,1513 -----
- Syntax:
- set zero <expression>
- show zero
- + 3 zeroaxis
- + ?set zeroaxis
- + ?show zeroaxis
- + ?zeroaxis
- + `set zeroaxis` draws the x-axis and y-axis. By default, this option is on.
- + `set noxzeroaxis` causes gnuplot to omit the axes.
- +
- + Syntax:
- + set zeroaxis
- + set nozeroaxis
- + show zeroaxis
- + See `set xzeroaxis` and `set yzeroaxis`.
- 2 shell
- ?shell
- The `shell` command spawns an interactive shell. To return to
- Common subdirectories: ./docs/latextut and ../gnuplot2.02/docs/latextut
- diff -cr ./docs/titlepage.ms ../gnuplot2.02/docs/titlepage.ms
- *** ./docs/titlepage.ms Fri Mar 9 00:48:30 1990
- --- ../gnuplot2.02/docs/titlepage.ms Wed Nov 28 09:15:45 1990
- ***************
- *** 7,13
- .AU
- Thomas Williams & Colin Kelley
- .br
- ! John Campbell, David Kotz, and Russell Lang (Version 2.0)
- .AI
- pixar!info-gnuplot@sun.com
- \*(DY
-
- --- 7,13 -----
- .AU
- Thomas Williams & Colin Kelley
- .br
- ! John Campbell, David Kotz, and Russell Lang (Version 2.0 patchlevel 2)
- .AI
- pixar!info-gnuplot@sun.com
- \*(DY
- diff -cr ./docs/titlepage.tex ../gnuplot2.02/docs/titlepage.tex
- *** ./docs/titlepage.tex Fri Mar 9 00:48:31 1990
- --- ../gnuplot2.02/docs/titlepage.tex Wed Nov 28 09:15:26 1990
- ***************
- *** 23,29
- \verb+pixar!info-gnuplot@sun.com+
-
- \vfill
- ! {\small This manual is for GNUPLOT version 2.0.}
-
- \end{center}
- \newpage
-
- --- 23,29 -----
- \verb+pixar!info-gnuplot@sun.com+
-
- \vfill
- ! {\small This manual is for GNUPLOT version 2.0 patchlevel 2.}
-
- \end{center}
- \newpage
- diff -cr ./docs/latextut/Makefile ../gnuplot2.02/docs/latextut/Makefile
- *** ./docs/latextut/Makefile Tue Mar 27 08:59:57 1990
- --- ../gnuplot2.02/docs/latextut/Makefile Fri Dec 7 08:34:22 1990
- ***************
- *** 1,6
- # Makefile for gnuplot LaTeX tutorial
- ! # To make the manual from scratch, we run latex three times
- ! all: tutorial.dvi
- latex tutorial
-
- # To touch it up after changes:
-
- --- 1,8 -----
- # Makefile for gnuplot LaTeX tutorial
- ! # To make the manual from scratch, we run latex two times
- ! all: tutorial.dvi done
- !
- ! done:
- latex tutorial
- echo > done
-
- ***************
- *** 2,7
- # To make the manual from scratch, we run latex three times
- all: tutorial.dvi
- latex tutorial
-
- # To touch it up after changes:
- remake: tutorial.dvi
-
- --- 4,10 -----
-
- done:
- latex tutorial
- + echo > done
-
- # To touch it up after changes:
- remake: tutorial.dvi
- ***************
- *** 13,18
- tutorial.dvi: eg1.tex eg2.tex eg3.tex eg4.tex eg5.tex eg6.tex \
- tutorial.tex header.tex
- latex tutorial
-
- .SUFFIXES: .tex .plt
-
-
- --- 16,22 -----
- tutorial.dvi: eg1.tex eg2.tex eg3.tex eg4.tex eg5.tex eg6.tex \
- tutorial.tex header.tex
- latex tutorial
- + rm -f done
-
- .SUFFIXES: .tex .plt
-
- diff -cr ./term/cgi.trm ../gnuplot2.02/term/cgi.trm
- *** ./term/cgi.trm Mon Nov 26 13:07:06 1990
- --- ../gnuplot2.02/term/cgi.trm Mon Dec 17 09:59:49 1990
- ***************
- *** 0
-
- --- 1,227 -----
- + /* GNUPLOT - cgi.trm */
- + /*
- + * Copyright (C) 1990 Ronald Florence
- + *
- + * Permission is hereby granted for unlimited non-commercial
- + * use of this code, on condition that the copyright
- + * notices are left intact and any modifications to the source
- + * code are noted as such. No warranty of any kind is implied
- + * or granted for this material.
- + *
- + * This file is included by ../term.c.
- + *
- + * This terminal driver supports SCO CGI drivers
- + *
- + * AUTHOR
- + * Ronald Florence <ron@mlfarm.com>
- + */
- +
- + #ifdef VGA_MONO
- + static short rgb[16][3] = {
- + 0, 0, 0, /* Black */
- + 1000, 1000, 1000, /* White */
- + 800, 800, 0, /* Red */
- + 0, 600, 0, /* Green */
- + 0, 800, 800, /* Blue */
- + 1000, 1000, 400, /* Yellow */
- + 0, 600, 600, /* Cyan */
- + 600, 600, 600, /* Magenta */
- + 800, 800, 0, /* Brown */
- + 600, 600, 600, /* Lt. Grey */
- + 400, 600, 400, /* Dark Grey */
- + 400, 600, 1000, /* Lt. Blue */
- + 400, 1000, 400, /* Lt Green */
- + 400, 1000, 1000, /* Lt Cyan */
- + 1000, 600, 400, /* Lt Red */
- + 600, 600, 1000 /* Lt Magenta */
- + };
- + #endif
- +
- + #define CGI_XMAX 32767
- + #define CGI_YMAX 32767
- + #define CGI_VTIC (CGI_YMAX / 75)
- + #define CGI_HTIC term_tbl[term].h_tic
- + #define CGI_VCHAR term_tbl[term].v_char
- + #define CGI_HCHAR term_tbl[term].h_char
- + #define CRT (gout[45] == 0)
- + #define CGICOLORS gout[13]
- + #define CGILINES gout[6]
- + #define CGIROTATES gout[36]
- + #define CGITEXTALIGN gout[48]
- +
- + static short gout[66];
- + static short cgidev;
- + static short vect[4];
- + static short gin[19] = {
- + 0, /* default aspect ratio */
- + 1, /* solid line */
- + 1, /* line color */
- + 1, /* marker type . */
- + 1, /* marker color */
- + 1, /* graphics text font */
- + 1, /* graphics text color */
- + 0, /* fill interior style */
- + 0, /* fill style index */
- + 1, /* fill color index */
- + 1 /* prompt for paper changes */
- + };
- +
- + char *cgidriver, *getenv();
- +
- +
- + CGI_init()
- + {
- + if (getenv(cgidriver = "CGIDISP") == NULL)
- + HCGI_init();
- + }
- +
- +
- + HCGI_init()
- + {
- + if (getenv(cgidriver = "CGIPRNT") == NULL)
- + int_error("no CGI driver", NO_CARET);
- + }
- +
- +
- + CGI_graphics()
- + {
- + int i, aspect;
- + char *s;
- + short font_cap[9];
- + char err_str[80];
- +
- + if ( (s=getenv("ASPECT")) != NULL && (aspect=atoi(s)) >= 0 && aspect <= 3 )
- + gin[0] = aspect;
- + for (i = 0; cgidriver[i]; i++)
- + gin[11+i] = cgidriver[i];
- + gin[18] = ' ';
- +
- + if (v_opnwk(gin, &cgidev, gout) < 0)
- + {
- + sprintf(err_str, "CGI error %d opening %s", -vq_error(), cgidriver);
- + int_error(err_str, NO_CARET);
- + }
- + vqt_representation(cgidev, 9, font_cap);
- + CGI_VCHAR = font_cap[8] * 3 / 2;
- + CGI_HCHAR = font_cap[7];
- + CGI_HTIC = CGI_VTIC * ((double) gout[1] / (double) gout[4]) /
- + ((double) gout[0] / (double) gout[3]);
- + #ifdef VGA_MONO
- + if (CGICOLORS > 2)
- + vsc_table(cgidev, 0, CGICOLORS, rgb);
- + #endif
- + }
- +
- +
- + CGI_text()
- + {
- + if (CRT)
- + {
- + short ptin[2];
- + char strin[2];
- +
- + ptin[0] = 0;
- + ptin[1] = 0;
- + vrq_string(cgidev, 1, 0, ptin, strin);
- + }
- + v_clswk(cgidev);
- + }
- +
- +
- + CGI_reset()
- + {
- + }
- +
- +
- + CGI_move(x, y)
- + int x, y;
- + {
- + vect[0] = x;
- + vect[1] = y;
- + }
- +
- + CGI_vector(x, y)
- + int x, y;
- + {
- + vect[2] = x;
- + vect[3] = y;
- + v_pline(cgidev, 2, vect);
- + vect[0] = x;
- + vect[1] = y;
- + }
- +
- +
- + CGI_linetype(linetype)
- + int linetype;
- + {
- + short lcolor;
- +
- + if (CGICOLORS > 2)
- + {
- + lcolor = (linetype + 2) % CGICOLORS + 1;
- + vsl_color(cgidev, lcolor);
- + vsm_color(cgidev, lcolor);
- + }
- + vsl_type(cgidev, (linetype < 1) ? 1 : (linetype % CGILINES) + 1);
- + }
- +
- +
- + CGI_put_text(x, y, str)
- + int x, y;
- + char *str;
- + {
- + v_gtext(cgidev, (short) x, (short) y, str);
- + }
- +
- +
- + CGI_text_angle(ang)
- + int ang;
- + {
- + if (!CGIROTATES)
- + return FALSE;
- + /* angles are 1/10 degree ccw */
- + vst_rotation(cgidev, (ang) ? 900 : 0);
- + return TRUE;
- + }
- +
- +
- + CGI_justify_text(mode)
- + enum JUSTIFY mode;
- + {
- + short hor_in, hor_out, vert_out;
- +
- + if (!CGITEXTALIGN)
- + return FALSE;
- +
- + switch (mode)
- + {
- + case LEFT: hor_in = 0; break;
- + case CENTRE: hor_in = 1; break;
- + case RIGHT: hor_in = 2; break;
- + }
- + vst_alignment(cgidev, hor_in, 1, &hor_out, &vert_out);
- + return TRUE;
- + }
- +
- +
- + #define POINT_TYPES 6
- +
- + CGI_point(x,y,num)
- + int x, y, num;
- + {
- + short point[2];
- + static short cgimarker[POINT_TYPES] = {1, 2, 6, 4, 5, 3};
- + /* . + <> [] X * */
- + if (num < 0)
- + {
- + CGI_move(x, y);
- + CGI_vector(x, y);
- + }
- + else
- + {
- + vsm_type(cgidev, cgimarker[num % POINT_TYPES]);
- + point[0] = x;
- + point[1] = y;
- + v_pmarker(cgidev, 1, point);
- + }
- + }
- diff -cr ./term/epson.trm ../gnuplot2.02/term/epson.trm
- *** ./term/epson.trm Mon Dec 17 09:53:09 1990
- --- ../gnuplot2.02/term/epson.trm Wed Dec 19 09:14:16 1990
- ***************
- *** 0
-
- --- 1,481 -----
- + /* GNUPLOT - epson.trm */
- + /*
- + * Copyright (C) 1990
- + *
- + * Permission to use, copy, and distribute this software and its
- + * documentation for any purpose with or without fee is hereby granted,
- + * provided that the above copyright notice appear in all copies and
- + * that both that copyright notice and this permission notice appear
- + * in supporting documentation.
- + *
- + * Permission to modify the software is granted, but not the right to
- + * distribute the modified code. Modifications are to be distributed
- + * as patches to released version.
- + *
- + * This software is provided "as is" without express or implied warranty.
- + *
- + * This file is included by ../term.c.
- + *
- + * This terminal driver supports:
- + * epson_lx800, nec_cp6c, nec_cp6d, nec_cp6b, starc,
- + * epson_60dpi, tandy_60dpi
- + *
- + * AUTHORS
- + * Russell Lang
- + * William Wilson
- + *
- + * send your comments or suggestions to (pixar!info-gnuplot@sun.com).
- + *
- + */
- +
- + /* The following epson lx800 driver uses generic bit mapped graphics
- + routines to build up a bit map in memory. */
- + /* by Russell Lang, rjl@monu1.cc.monash.edu.au */
- + /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
- + /* EPSON_init changes outfile to binary mode on PC's */
- +
- + #ifdef EPSON
- +
- + #define EPSONXMAX 512
- + #define EPSONYMAX 384
- +
- + #define EPSONXLAST (EPSONXMAX - 1)
- + #define EPSONYLAST (EPSONYMAX - 1)
- +
- + #define EPSONVCHAR FNT5X9_VCHAR
- + #define EPSONHCHAR FNT5X9_HCHAR
- + #define EPSONVTIC 6
- + #define EPSONHTIC 6
- +
- + EPSONinit()
- + {
- + #ifdef PC
- + reopen_binary();
- + #endif
- + #ifdef vms
- + reopen_binary();
- + #endif
- + }
- +
- +
- + EPSONgraphics()
- + {
- + b_charsize(FNT5X9);
- + b_makebitmap((unsigned int)(EPSONXMAX*xsize),
- + (unsigned int)(EPSONYMAX*ysize),1);
- + }
- +
- +
- + EPSONtext()
- + {
- + epson_dump();
- + b_freebitmap();
- + }
- +
- +
- + #define EPSONlinetype b_setlinetype
- + #define EPSONmove b_move
- + #define EPSONvector b_vector
- + #define EPSONput_text b_put_text
- + #define EPSON_text_angle b_text_angle
- +
- + EPSONreset()
- + {
- + #ifdef vms
- + fflush_binary();
- + #endif
- + }
- +
- +
- + /* output file must be binary mode for epson_dump */
- + epson_dump()
- + {
- + register unsigned int x;
- + int j;
- + for (j=(b_ysize/8)-1; j>=0; j--) {
- + /* select plotter graphics mode (square pixels) */
- + fprintf(outfile,"\033J\030"); /* line feed 8/72" = 8 dots */
- + fprintf(outfile,"\r\033*\005");
- + (void) fputc((char)(b_xsize%256),outfile);
- + (void) fputc((char)(b_xsize/256),outfile);
- + for (x=0; x<b_xsize; x++) {
- + (void) fputc( (char)(*((*b_p)[j]+x)), outfile );
- + }
- + }
- + #ifdef PC
- + fprintf(stderr,"Print using: COPY /B\n");
- + #endif
- + }
- +
- + #endif /* EPSON */
- +
- +
- + /* The following NEC CP6 Pinwriter driver uses generic bit mapped graphics
- + routines to build up a bit map in memory. */
- + /* by Russell Lang, rjl@monu1.cc.monash.edu.au */
- + /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
- + /* NECinit changes outfile to binary mode for PC's */
- +
- + /* Add a Monochrome NEC printer (for faster speed and line types) jdc */
- +
- + #ifdef NEC
- +
- + #define NECXMAX 400
- + #define NECYMAX 320
- +
- + #define NECXLAST (NECXMAX - 1)
- + #define NECYLAST (NECYMAX - 1)
- +
- + #define NECVCHAR FNT5X9_VCHAR
- + #define NECHCHAR FNT5X9_HCHAR
- + #define NECVTIC 6
- + #define NECHTIC 6
- +
- + /* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
- + static unsigned int neccolor[] = {1,8,4,2,10,12,6,14};
- + static unsigned int necpcolor[]= {0,2,1,4};
- +
- + NECinit()
- + {
- + #ifdef PC
- + reopen_binary();
- + #endif
- + #ifdef vms
- + reopen_binary();
- + #endif
- + }
- +
- +
- + /* Monochrome only NEC CP6 printer (set term nec_cp6m or nec_cp6d). */
- + /* will probably work with NEC P6 printer */
- + NECMgraphics()
- + {
- + b_charsize(FNT5X9);
- + b_makebitmap((unsigned int)(NECXMAX*xsize),
- + (unsigned int)(NECYMAX*ysize),1);
- + }
- +
- + /* Color ribbon in NEC CP6 printer (set term nec_cp6c) */
- + NECCgraphics()
- + {
- + b_charsize(FNT5X9);
- + b_makebitmap((unsigned int)(NECXMAX*xsize),
- + (unsigned int)(NECYMAX*ysize),4);
- + }
- +
- +
- + NECdraft_text()
- + {
- + nec_draft_dump();
- + b_freebitmap();
- + }
- +
- + NECtext()
- + {
- + nec_dump();
- + b_freebitmap();
- + }
- +
- + NECClinetype(linetype)
- + int linetype;
- + {
- + if (linetype>=6)
- + linetype %= 6;
- + b_setvalue(neccolor[linetype+2]);
- + }
- +
- + #define NECMlinetype b_setlinetype
- + #define NECmove b_move
- + #define NECvector b_vector
- + #define NECput_text b_put_text
- + #define NEC_text_angle b_text_angle
- +
- +
- + NECreset()
- + {
- + #ifdef vms
- + fflush_binary();
- + #endif
- + }
- +
- +
- + /* output file must be binary mode for nec_dump */
- + nec_dump()
- + {
- + unsigned int x;
- + unsigned int plane,offset;
- + int j;
- + unsigned int column8;
- + unsigned long column24;
- + char column3, column2, column1;
- + fprintf(outfile,"\033P\033l\005"); /* 10cpi, left margin 5 char */
- + for (j=(b_ysize/8)-1;j>=0;j--) {
- + fprintf(outfile,"\033J\030"); /* 24/180" line feed */
- + for (plane=0; plane<b_planes; plane++) {
- + offset=plane*b_psize;
- + if (b_planes>1) {
- + /* select colour for plane */
- + fprintf(outfile,"\033r");
- + (void) fputc((char)necpcolor[plane],outfile);
- + }
- + /* select plotter graphics mode (square pixels) */
- + fprintf(outfile,"\r\033*\047");
- + (void) fputc((char)((b_xsize*3)%256),outfile);
- + (void) fputc((char)((b_xsize*3)/256),outfile);
- + for (x=0; x<b_xsize; x++) {
- + column8= (unsigned int)(*((*b_p)[j+offset]+x));
- + column24=0;
- + if (column8&0x01) column24|=(long)0x000007;
- + if (column8&0x02) column24|=(long)0x000038;
- + if (column8&0x04) column24|=(long)0x0001c0;
- + if (column8&0x08) column24|=(long)0x000e00;
- + if (column8&0x10) column24|=(long)0x007000;
- + if (column8&0x20) column24|=(long)0x038000;
- + if (column8&0x40) column24|=(long)0x1c0000;
- + if (column8&0x80) column24|=(long)0xe00000;
- + column1 = (char) ( column24 & (long)0xff);
- + column2 = (char) ((column24>>8) & (long)0xff);
- + column3 = (char) ((column24>>16) & (long)0xff);
- + (void) fputc(column3,outfile);
- + (void) fputc(column2,outfile);
- + (void) fputc(column1,outfile);
- + (void) fputc(column3,outfile);
- + (void) fputc(column2,outfile);
- + (void) fputc(column1,outfile);
- + (void) fputc(column3,outfile);
- + (void) fputc(column2,outfile);
- + (void) fputc(column1,outfile);
- + }
- + }
- + }
- + fprintf(outfile,"\r\033l");
- + (void) fputc('\0',outfile); /* set left margin to 0 */
- + if (b_planes > 1) {
- + fprintf(outfile,"\033r");
- + (void) fputc('\0',outfile); /* set color to black */
- + }
- + #ifdef PC
- + fprintf(stderr,"Print using: COPY /B\n");
- + #endif
- + #ifdef vms
- + fflush_binary();
- + #endif
- + }
- +
- + /* output file must be binary mode for nec_dump */
- + nec_draft_dump()
- + {
- + unsigned int x;
- + unsigned int plane,offset;
- + int j;
- + fprintf(outfile,"\033P\033l\005\r"); /* 10cpi, left margin 5 char */
- + for (j=(b_ysize/8)-1;j>=0;j--) {
- + fprintf(outfile,"\033J\030"); /* 24/180" line feed */
- + for (plane=0; plane<b_planes; plane++) {
- + offset=plane*b_psize;
- + if (b_planes>1) {
- + /* select colour for plane */
- + fprintf(outfile,"\033r");
- + (void) fputc((char)necpcolor[plane],outfile);
- + }
- + /* select plotter graphics mode (square pixels) */
- + fprintf(outfile,"\r\033*");
- + (void) fputc('\0',outfile);
- + (void) fputc((char)(b_xsize%256),outfile);
- + (void) fputc((char)(b_xsize/256),outfile);
- + for (x=0; x<b_xsize; x++) {
- + (void) fputc( (char)(*((*b_p)[j+offset]+x)), outfile );
- + }
- + }
- + }
- + fprintf(outfile,"\r\033l");
- + (void) fputc('\0',outfile); /* set left margin to 0 */
- + if (b_planes > 1) {
- + fprintf(outfile,"\033r");
- + (void) fputc('\0',outfile); /* set color to black */
- + }
- + #ifdef PC
- + fprintf(stderr,"Print using: COPY /B\n");
- + #endif
- + }
- +
- + #endif /* NEC */
- +
- + #ifdef STARC
- + /* The following Star color driver uses generic bit mapped graphics
- + routines to build up a bit map in memory. */
- + /* Star Color changes made by William Wilson, wew@naucse.cse.nau.edu */
- + /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
- + /* STARC_init changes outfile to binary mode on PC's */
- +
- + #define STARCXMAX 512
- + #define STARCYMAX 384
- +
- + #define STARCXLAST (STARCXMAX - 1)
- + #define STARCYLAST (STARCYMAX - 1)
- +
- + #define STARCVCHAR FNT5X9_VCHAR
- + #define STARCHCHAR FNT5X9_HCHAR
- + #define STARCVTIC 6
- + #define STARCHTIC 6
- +
- + /* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
- + static unsigned int STARCcolor[] = {1,8,4,2,10,12,6,14};
- + static unsigned int STARCpcolor[]= {0,2,1,4};
- +
- + STARCinit()
- + {
- + #ifdef PC
- + reopen_binary();
- + #endif
- + #ifdef vms
- + reopen_binary();
- + #endif
- + }
- +
- +
- + STARCgraphics()
- + {
- + b_charsize(FNT5X9);
- + b_makebitmap((unsigned int)(STARCXMAX*xsize),
- + (unsigned int)(STARCYMAX*ysize),4);
- + }
- +
- +
- + STARCtext()
- + {
- + STARC_dump();
- + b_freebitmap();
- + }
- +
- + STARClinetype(linetype)
- + int linetype;
- + {
- + if (linetype>=6)
- + linetype %= 6;
- + b_setvalue(STARCcolor[linetype+2]);
- + }
- +
- +
- + #define STARCmove b_move
- + #define STARCvector b_vector
- + #define STARCput_text b_put_text
- + #define STARC_text_angle b_text_angle
- +
- + STARCreset()
- + {
- + #ifdef vms
- + fflush_binary();
- + #endif
- + }
- +
- +
- + /* output file must be binary mode for STARC_dump */
- + STARC_dump()
- + {
- + unsigned int x;
- + unsigned int plane,offset;
- + int j;
- + for (j=(b_ysize/8)-1;j>=0;j--) {
- + fprintf(outfile,"\033J\030"); /* line feed 8/72" = 8 dots */
- + for (plane=0; plane<b_planes; plane++) {
- + offset=plane*b_psize;
- + if (b_planes>1) {
- + /* select colour for plane */
- + fprintf(outfile,"\033r");
- + (void) fputc((char)STARCpcolor[plane],outfile);
- + }
- + /* select plotter graphics mode (square pixels) */
- + fprintf(outfile,"\r\033*\005");
- + (void) fputc((char)(b_xsize%256),outfile);
- + (void) fputc((char)(b_xsize/256),outfile);
- + for (x=0; x<b_xsize; x++) {
- + (void) fputc( (char)(*((*b_p)[j+offset]+x)), outfile );
- + }
- + }
- + }
- + if (b_planes > 1) {
- + fprintf(outfile,"\033r");
- + (void) fputc('\0',outfile); /* set color to black */
- + }
- + #ifdef PC
- + fprintf(stderr,"Print using: COPY /B\n");
- + #endif
- + }
- +
- + #endif /* STARC */
- +
- +
- + #ifdef EPS60
- +
- + /* make the total dimensions 8 inches by 5 inches */
- + #define EPS60XMAX 480
- + #define EPS60YMAX 360
- +
- + #define EPS60XLAST (EPS60XMAX - 1)
- + #define EPS60YLAST (EPS60YMAX - 1)
- +
- + EPS60graphics()
- + {
- + b_charsize(FNT5X9);
- + b_makebitmap((unsigned int)(EPS60XMAX*xsize),
- + (unsigned int)(EPS60YMAX*ysize),1);
- + }
- +
- +
- + EPS60text()
- + {
- + eps60_dump();
- + b_freebitmap();
- + }
- +
- +
- +
- + /* output file must be binary mode for eps60_dump */
- + eps60_dump()
- + {
- + register unsigned int x;
- + int j;
- + fprintf(outfile,"\033%c\030",'3'); /* set line spacing 24/216" = 8 dots */
- + for (j=(b_ysize/8)-1; j>=0; j--) {
- + /* select printer graphics mode 'K' */
- + fprintf(outfile,"\r\n\033K");
- + (void) fputc((char)(b_xsize%256),outfile);
- + (void) fputc((char)(b_xsize/256),outfile);
- + for (x=0; x<b_xsize; x++) {
- + (void) fputc( (char)(*((*b_p)[j]+x)), outfile );
- + }
- + }
- + fprintf(outfile,"\033%c\044\r\n",'3'); /* set line spacing 36/216" = 1/6" */
- + #ifdef PC
- + fprintf(stderr,"Print using: COPY /B\n");
- + #endif
- + }
- +
- + #endif /* EPS60 */
- +
- + #ifdef TANDY60
- +
- + /* The only difference between TANDY60 and EPS60 is the inclusion
- + of codes to swap the Tandy printer into IBM mode and back
- + into Tandy mode. For a Tandy already in IBM mode, use EPS60. */
- +
- +
- + TANDY60text()
- + {
- + #ifdef PC
- + fprintf(stderr, "Inserting Tandy/IBM mode conversion codes\n");
- + #endif
- + /* Switch to IBM mode, and leave 3 inches above the plot so as
- + to get rough vertical centring on the page. Perform the
- + centring by setting 1" line feeds and issuing 3 of them. */
- + fprintf(outfile, "\033!\033%c%c\n\n\n", '3',216);
- + eps60_dump();
- + b_freebitmap();
- + /* A form feed must be sent before switching back to Tandy mode,
- + or else the form setting will be messed up. */
- + fprintf(outfile, "\f\033!");
- + }
- +
- +
- + #endif /* TANDY60 */
- Only in ./term: hpljet.trm
- diff -cr ./term/hpljii.trm ../gnuplot2.02/term/hpljii.trm
- *** ./term/hpljii.trm Fri Nov 23 17:50:38 1990
- --- ../gnuplot2.02/term/hpljii.trm Thu Dec 6 13:10:09 1990
- ***************
- *** 0
-
- --- 1,235 -----
- + /* GNUPLOT - hpljii.trm */
- + /*
- + * Copyright (C) 1990
- + *
- + * Permission to use, copy, and distribute this software and its
- + * documentation for any purpose with or without fee is hereby granted,
- + * provided that the above copyright notice appear in all copies and
- + * that both that copyright notice and this permission notice appear
- + * in supporting documentation.
- + *
- + * Permission to modify the software is granted, but not the right to
- + * distribute the modified code. Modifications are to be distributed
- + * as patches to released version.
- + *
- + * This software is provided "as is" without express or implied warranty.
- + *
- + * This file is included by ../term.c.
- + *
- + * This terminal driver supports:
- + * hpljii_75dpi, hpljii_100dpi, hpljii_150dpi, hpljii_300dpi
- + *
- + * AUTHORS
- + * John Engels
- + * Russell Lang
- + *
- + * send your comments or suggestions to (pixar!info-gnuplot@sun.com).
- + *
- + */
- +
- + /* The following HP laserjet series II driver uses generic bit mapped graphics
- + routines from bitmap.c to build up a bit map in memory. The driver
- + interchanges colomns and lines in order to access entire lines
- + easily and returns the lines to get bits in the right order :
- + (x,y) -> (y,XMAX-1-x). */
- + /* This interchange is done by calling b_makebitmap() with reversed
- + xmax and ymax, and then setting b_rastermode to TRUE. b_setpixel()
- + will then perform the interchange before each pixel is plotted */
- + /* by John Engels JENGELS@BNANDP51.BITNET, inspired by the hpljet driver
- + of Jyrki Yli-Nokari */
- +
- + #ifdef HPLJII
- +
- + /* We define 4 different print qualities : 300ppi, 150ppi, 100ppi and
- + 75ppi. (Pixel size = 1, 2, 3, 4 dots) */
- +
- + #define HPLJII_DPP (hplj_dpp) /* dots per pixel */
- + #define HPLJII_PPI (300/HPLJII_DPP) /* pixel per inch */
- + #define HPLJII_XMAX (8*(unsigned int)(xsize*1920/HPLJII_DPP/8.0+0.9))
- + #define HPLJII_YMAX (8*(unsigned int)(ysize*1920/HPLJII_DPP/8.0+0.9))
- + #define HPLJII_300PPI_XMAX (1920/1)
- + #define HPLJII_300PPI_YMAX (1920/1)
- + #define HPLJII_150PPI_XMAX (1920/2)
- + #define HPLJII_150PPI_YMAX (1920/2)
- + #define HPLJII_100PPI_XMAX (1920/3)
- + #define HPLJII_100PPI_YMAX (1920/3)
- + #define HPLJII_75PPI_XMAX (1920/4)
- + #define HPLJII_75PPI_YMAX (1920/4)
- +
- + #define HPLJII_XLAST (HPLJII_XMAX-1)
- + #define HPLJII_YLAST (HPLJII_YMAX-1)
- +
- + #define HPLJII_VCHAR (HPLJII_PPI/6) /* Courier font with 6 lines per inch */
- + #define HPLJII_HCHAR (HPLJII_PPI/10) /* Courier font with 10 caracters
- + per inch */
- + #define HPLJII_300PPI_VCHAR (300/6)
- + #define HPLJII_300PPI_HCHAR (300/10)
- + #define HPLJII_150PPI_VCHAR (150/6)
- + #define HPLJII_150PPI_HCHAR (150/10)
- + #define HPLJII_100PPI_VCHAR (100/6)
- + #define HPLJII_100PPI_HCHAR (100/10)
- + #define HPLJII_75PPI_VCHAR (75/6)
- + #define HPLJII_75PPI_HCHAR (75/10)
- +
- + #define HPLJII_300PPI_VTIC 8 /* Use smaller tics with greater resolution */
- + #define HPLJII_300PPI_HTIC 8
- + #define HPLJII_150PPI_VTIC 6
- + #define HPLJII_150PPI_HTIC 6
- + #define HPLJII_100PPI_VTIC 6
- + #define HPLJII_100PPI_HTIC 6
- + #define HPLJII_75PPI_VTIC 5
- + #define HPLJII_75PPI_HTIC 5
- +
- + #define HPLJII_PUSH_CURSOR fprintf(outfile,"\033&f0S") /* Save current
- + cursor position */
- + #define HPLJII_POP_CURSOR fprintf(outfile,"\033&f1S") /* Restore
- + cursor position */
- + #define HPLJII_COURIER fprintf(outfile,"\033(0N\033(s0p10.0h12.0v0s0b3T\033&l6D")
- + /* be sure to use courier font with 6lpi and 10cpi */
- +
- + static int hplj_dpp;
- + /* bm_pattern not appropriate for 300ppi graphics */
- + static unsigned int b_300ppi_pattern[] = {0xffff, 0x1111,
- + 0xffff, 0x3333, 0x0f0f, 0x3f3f, 0x0fff, 0x00ff, 0x33ff};
- +
- + HPLJIIinit()
- + {
- + #ifdef vms
- + reopen_binary();
- + #endif /* vms */
- + #ifdef PC
- + reopen_binary();
- + #endif /* PC */
- + }
- +
- + HPLJII_300PPIgraphics()
- + {
- + hplj_dpp = 1;
- + HPLJIIgraphics();
- + }
- +
- + HPLJII_150PPIgraphics()
- + {
- + hplj_dpp = 2;
- + HPLJIIgraphics();
- + }
- +
- + HPLJII_100PPIgraphics()
- + {
- + hplj_dpp = 3;
- + HPLJIIgraphics();
- + }
- +
- + HPLJII_75PPIgraphics()
- + {
- + hplj_dpp = 4;
- + HPLJIIgraphics();
- + }
- +
- + HPLJIIgraphics()
- + {
- + HPLJII_COURIER;
- + HPLJII_PUSH_CURSOR;
- + /* rotate plot -90 degrees by reversing XMAX and YMAX and by
- + setting b_rastermode to TRUE */
- + b_makebitmap(HPLJII_YMAX,HPLJII_XMAX,1);
- + b_rastermode = TRUE;
- + }
- +
- +
- + /* HPLJIItext by rjl - no compression */
- + HPLJIItext()
- + {
- + register int x,j,row;
- +
- + fprintf(outfile,"\033*t%dR", HPLJII_PPI);
- + HPLJII_POP_CURSOR;
- + fprintf(outfile, "\033*r1A");
- +
- + /* dump bitmap in raster mode */
- + for (x = b_xsize-1; x >= 0; x--) {
- + row = (b_ysize/8)-1;
- + fprintf(outfile, "\033*b2m%dW", b_ysize/8);
- + for (j = row; j >= 0; j--) {
- + (void) fputc( (char)(*((*b_p)[j]+x)), outfile );
- + }
- + }
- + fprintf(outfile, "\033*rB");
- +
- + b_freebitmap();
- +
- + #ifndef vms /* most vms spoolers add a formfeed character */
- + fprintf(outfile,"\f");
- + #endif /* not vms */
- + }
- +
- +
- +
- + HPLJIIlinetype(linetype)
- + int linetype;
- + {
- +
- + if (hplj_dpp == 1) {
- + if (linetype>=7)
- + linetype %= 7;
- + /* b_pattern not appropriate for 300ppi graphics */
- + b_linemask = b_300ppi_pattern[linetype+2];
- + b_maskcount=0;
- + }
- + else {
- + b_setlinetype(linetype);
- + }
- + }
- +
- + #define HPLJIImove b_move
- + #define HPLJIIvector b_vector
- + #define HPLJIItext_angle b_text_angle
- +
- + HPLJIIput_text(x,y,str)
- + unsigned int x, y;
- + char *str;
- + {
- + switch (b_angle) {
- + case 0:
- + y -= HPLJII_VCHAR/5;
- + HPLJII_POP_CURSOR;
- + HPLJII_PUSH_CURSOR;
- + /* (0,0) is the upper left point of the paper */
- + fprintf(outfile, "\033*p%+dx%+dY", x*HPLJII_DPP
- + , (HPLJII_YMAX-y-1)*HPLJII_DPP );
- + fputs(str, outfile);
- + /* for (; *str; ++str, x += HPLJII_HCHAR)
- + HPLJIIputc (x, y, *str, b_angle);*/
- + break;
- + case 1:
- + y += (HPLJII_HCHAR-2*HPLJII_VCHAR)/2;
- + y += (HPLJII_VCHAR+HPLJII_HCHAR)*strlen(str)/2;
- + for (; *str; ++str, y -= HPLJII_VCHAR)
- + HPLJIIputc (x, y, *str, b_angle);
- + break;
- + }
- + }
- +
- + HPLJIIputc(x,y,c,angle)
- + unsigned int x,y;
- + int angle;
- + char c;
- + {
- + HPLJII_POP_CURSOR;
- + HPLJII_PUSH_CURSOR;
- + /* (0,0) is the upper left point of the paper */
- + fprintf(outfile, "\033*p%+dx%+dY", x*HPLJII_DPP
- + , (HPLJII_YMAX-y-1)*HPLJII_DPP );
- + fputc(c, outfile);
- + }
- +
- +
- + HPLJIIreset()
- + {
- + #ifdef vms
- + fflush_binary();
- + #endif /* vms */
- + }
- +
- + #endif /* HPLJII */
- +
- diff -cr ./term/kyo.trm ../gnuplot2.02/term/kyo.trm
- *** ./term/kyo.trm Fri Nov 23 17:50:44 1990
- --- ../gnuplot2.02/term/kyo.trm Mon Dec 3 17:17:07 1990
- ***************
- *** 0
-
- --- 1,107 -----
- + /* Prescribe (KYOCERA) driver - Michael Waldor */
- + /* Modified for gnuplot 2.0 sk@sun4 24-Apr-1990 13:23 */
- + #ifdef PRESCRIBE
- +
- + #define PRE_XMAX 2567
- + #define PRE_YMAX 1815 /* X:Y = sqrt(2) */
- +
- + #define PRE_XLAST (PRE_XMAX - 1)
- + #define PRE_YLAST (PRE_YMAX - 1)
- +
- + #define PRE_VCHAR (PRE_YMAX/30)
- + #define PRE_HCHAR 33 /* about 9 chars per inch */
- + #define PRE_HTIC (PRE_XMAX/80)
- + #define PRE_VTIC PRE_HTIC
- +
- + /* for Courier font: */
- + #define KYO_VCHAR (14*(300/72)) /* 12 pt + 2 pt baselineskip */
- + #define KYO_HCHAR (300/10) /* 10 chars per inch */
- +
- + enum JUSTIFY pre_justify=LEFT; /* text is flush left */
- +
- + PRE_init()
- + {
- + (void) fprintf(outfile,"!R! RES;\n") ;
- + /* UNIT: units are dots, 300 dots = 1 in = 72 pt */
- + /* SPO: landscape format */
- + /* STM, SLM set top, left margin*/
- + /* Font: bold Helvetica (proportional font) */
- + (void) fprintf(outfile,"PAGE; UNIT D; SPO L; STM 280; SLM 440;\n") ;
- + (void) fprintf(outfile,"FTMD 15; FONT 29; SCPI 9;\n") ;
- + }
- +
- + KYO_init()
- + {
- + (void) fprintf(outfile,"!R! RES;\n") ;
- + /* UNIT: units are dots, 300 dots = 1 in = 72 pt */
- + /* SPO: landscape format */
- + /* STM, SLM set top, left margin */
- + /* Font: Courier (fixed width font) */
- + (void) fprintf(outfile,"PAGE; UNIT D; SPO L; STM 280; SLM 440;\n") ;
- + (void) fprintf(outfile,"FTMD 15; FONT 17; SCPI 10;\n") ;
- + }
- +
- + PRE_graphics()
- + {
- + }
- +
- + PRE_text() /* eject page after each plot */
- + {
- + (void) fprintf(outfile,"PAGE;\n") ;
- + }
- +
- + PRE_linetype(linetype)
- + int linetype ;
- + {
- + /* actually choose pendiameter */
- + if (linetype < 0) linetype = -linetype;
- + else linetype = 3;
- + (void) fprintf(outfile,"SPD %d;\n", linetype) ;
- + }
- +
- + PRE_move(x,y)
- + unsigned int x,y ;
- + {
- + (void) fprintf(outfile,"MAP %1d,%1d;\n",x,PRE_YMAX-y) ;
- + }
- +
- + PRE_vector(x,y)
- + unsigned int x,y ;
- + {
- + (void) fprintf(outfile,"DAP %1d, %1d;\n",x,PRE_YMAX-y) ;
- + }
- +
- + PRE_put_text(x, y, str)
- + unsigned int x,y ;
- + char *str;
- + {
- + PRE_move(x,y);
- + switch(pre_justify){
- + case RIGHT:
- + (void) fprintf(outfile,"RTXT \"%s\", B;\n",str) ;
- + break;
- + default:
- + (void) fprintf(outfile,"TEXT \"%s\", B;\n",str) ;
- + }
- + }
- +
- + int PRE_justify_text(mode)
- + enum JUSTIFY mode;
- + {
- + pre_justify=mode;
- + switch(pre_justify){
- + case LEFT:
- + case RIGHT:
- + return(TRUE);
- + default:
- + return(FALSE);
- + }
- +
- + }
- +
- + PRE_reset()
- + {
- + (void) fprintf(outfile,"PAGE; RES; EXIT;\n");
- + }
- +
- + #endif /* PRESCRIBE */
- diff -cr ./term/pc.trm ../gnuplot2.02/term/pc.trm
- *** ./term/pc.trm Tue Sep 18 14:59:12 1990
- --- ../gnuplot2.02/term/pc.trm Thu Dec 6 16:08:17 1990
- ***************
- *** 61,68
- int startx, starty;
-
- int pc_angle;
- ! #define PC_VCHAR 11
- ! #define PC_HCHAR 7
-
- pause() /* press any key to continue... */
- {
-
- --- 61,68 -----
- int startx, starty;
-
- int pc_angle;
- ! #define PC_VCHAR FNT5X9_VCHAR
- ! #define PC_HCHAR FNT5X9_HCHAR
-
- pause() /* press any key to continue... */
- {
- ***************
- *** 105,113
- int i,j,k;
- unsigned int pixelon;
- i = (int)(c) - 32;
- ! for (j=0; j<9; j++) {
- ! for (k=0; k<5; k++) {
- ! pixelon = (((unsigned int)(font5x7[i][j])) >> k & 1);
- if (pixelon) {
- switch(angle) {
- case 0 : (*line_func)(x+k+1,y-j,x+k+1,y-j);
-
- --- 105,113 -----
- int i,j,k;
- unsigned int pixelon;
- i = (int)(c) - 32;
- ! for (j=0; j<FNT5X9_VBITS; j++) {
- ! for (k=0; k<FNT5X9_HBITS; k++) {
- ! pixelon = (((unsigned int)(fnt5x9[i][j])) >> k & 1);
- if (pixelon) {
- switch(angle) {
- case 0 : (*line_func)(x+k+1,y-j,x+k+1,y-j);
- diff -cr ./term/tek.trm ../gnuplot2.02/term/tek.trm
- *** ./term/tek.trm Tue Mar 27 09:03:10 1990
- --- ../gnuplot2.02/term/tek.trm Mon Nov 12 12:23:24 1990
- ***************
- *** 55,60
-
- TEK40graphics()
- {
- fprintf(outfile,"\033\014");
- /* 1
- 1. clear screen
-
- --- 55,63 -----
-
- TEK40graphics()
- {
- + #ifdef vms
- + term_pasthru();
- + #endif /* vms */
- fprintf(outfile,"\033\014");
- /* 1
- 1. clear screen
- ***************
- *** 72,77
- /* 1
- 1. into alphanumerics
- */
- }
-
-
-
- --- 75,83 -----
- /* 1
- 1. into alphanumerics
- */
- + #ifdef vms
- + term_nopasthru();
- + #endif /* vms */
- }
-
-
- ***************
- *** 177,182
-
- KTEK40graphics()
- {
- fprintf(outfile,"\033\014");
- /* 1
- 1. clear screen
-
- --- 183,192 -----
-
- KTEK40graphics()
- {
- + #ifdef vms
- + term_mode_tek();
- + term_pasthru();
- + #endif /* vms */
- fprintf(outfile,"\033\014");
- /* 1
- 1. clear screen
- ***************
- *** 188,193
- {
- TEK40text();
- KTEK40Clinetype(0); /* change to green */
- }
-
- /* special color linetypes for MS-DOS Kermit v2.31 tektronix emulator */
-
- --- 198,206 -----
- {
- TEK40text();
- KTEK40Clinetype(0); /* change to green */
- + #ifdef vms
- + term_nopasthru();
- + #endif /* vms */
- }
-
- /* special color linetypes for MS-DOS Kermit v2.31 tektronix emulator */
- ***************
- *** 225,230
- KTEK40reset()
- {
- fprintf(outfile,"\030\n"); /* turn off Tek emulation */
- }
-
- #endif /* KERMIT */
-
- --- 238,246 -----
- KTEK40reset()
- {
- fprintf(outfile,"\030\n"); /* turn off Tek emulation */
- + #ifdef vms
- + term_mode_native();
- + #endif /* vms */
- }
-
- #endif /* KERMIT */
- ***************
- *** 276,278
- }
- #endif /* SELANAR */
-
-
- --- 292,345 -----
- }
- #endif /* SELANAR */
-
- + #ifdef VTTEK
- +
- + VTTEK40init()
- + {
- + fprintf(outfile,"\033[?38h");
- + fflush(outfile);
- + sleep(1);
- + /* sleep 1 second to allow screen time to clear on some terminals */
- + #ifdef vms
- + term_mode_tek();
- + #endif /* vms */
- + }
- +
- + VTTEK40reset()
- + {
- + fprintf(outfile,"\033[?38l");
- + fflush(outfile);
- + sleep(1);
- + /* sleep 1 second to allow screen time to clear on some terminals */
- + #ifdef vms
- + term_mode_native();
- + #endif /* vms */
- + }
- +
- + /* linetypes for VT-type terminals in tektronix emulator mode */
- + /* `=solid, a=fine dots, b=short dashes, c=dash dot,
- + d=long dash dot, h=bold solid, i=bold fine dots, j=bold short dashes,
- + k=bold dash dot, l=bold long dash dot */
- + static char *vt_linetype = "`a`abcdhijkl" ;
- + static int last_vt_linetype = 0;
- + VTTEK40linetype(linetype)
- + int linetype;
- + {
- + if (linetype >= 10)
- + linetype %= 10;
- + fprintf(outfile,"\033%c",vt_linetype[linetype+2]);
- + last_vt_linetype = linetype;
- + }
- +
- + VTTEK40put_text(x,y,str)
- + unsigned int x,y;
- + char str[];
- + {
- + int linetype;
- + linetype = last_vt_linetype;
- + VTTEK40linetype(0);
- + TEK40put_text(x,y,str);
- + VTTEK40linetype(linetype);
- + }
- +
- + #endif /* VTTEK */
-