ftp.nice.ch/pub/next/tools/frontends/Gnuplot.1.2.s.tar.gz#/GnuplotSources/Unused

0BUGS
 
0FAQ
 
0INSTALL
 
0README
 
BETA
 
Copyright
 
History
 
Makefile → makefile.unx
[Download]
README.3d
 
README.3p2
 
README.3p3
 
README.3p4
 
README.ami
 
README.gnu
 
README.mf
 
README.nex
 
README.os2
 
README.pro
 
README.win
 
README.x11
 
bf_test
 
bf_test.c
[View bf_test.c] 
buildvms.com
 
corgraph.asm
 
corplot.c
[View corplot.c] 
demo/
 
docs/
 
epsviewe.m
[View epsviewe.m] 
gnuplot.def
 
gnuplot.el
 
gnuplot.prj
 
gplt_x11.c
[View gplt_x11.c] 
header.mac
 
hrcgraph.asm
 
intergra.x11
 
lasergnu
 
lineproc.mac
 
linkopt.amg
 
linkopt.msc
 
linkopt.vms
 
linkopt.ztc
 
makefile.286
 
makefile.amg
 
makefile.ami
 
makefile.djg
 
makefile.emx
 
makefile.msc
 
makefile.msw
 
makefile.nt
 
makefile.os2
 
makefile.r
 
makefile.st
 
makefile.tc
 
makefile.unx
 
makefile.vms
 
makefile.win
 
makefile.ztc
 
os2/
 
pcgraph.asm
 
term/
 
win/
 

README.3d

                   A tutorial on explicit/parametric
                                   and
                    everything you did not dare to ask
                                  about
                           curves and surfaces
                                    in
                                  gnuplot

Several types of curves and surface are supported in gnuplot. Of those
not every operation is supported for every curve or surface type and it
can be therefore useful to understand the different types, their advantages
and limitations.

Curves in gnuplot are almost always planar (with one exception which we
will deal with in the end) and are assumed to be in the XY plane.
Therefore only X and Y coordinates are needed for plotting curves.
The simplest curve is the `explicit function`. This curve is in fact a
function and for each given x, there is one and only one y value associated
with it. A gnuplot example for such type is `plot sin(x)` or
`plot "datafile" using 1". Note the later is using only a single column from
the data file which is assumed to be the y values.

Alternatively one can define a `parametric curve` form. In this case
x and y are both functions of a third free parameter t, while independent
of each other. A circle can be expressed parametrically as x = cos(t),
y = sin(t) and be plotted using gnuplot as
'set parametric; plot cos(t),sin(t)'.
This form is not a function since there can be unlimited number of y values
associated with same x. Furthermore the explicit form is a special case of
the parametric representation by letting x equal to t. The curve y = sin(x)
can be written in parametric form as y = sin(t), x = t.

We are used to think of the plane in cartesian coordinate system.
In practice, some coordinate systems may be easier to use then others
under some circumstances. The polar form uses a different basis
to span the XY plane. In this representation the cartesian x coordinate
is equal to r cos(t) and the cartesian y coordinate is equal to r sin(t).
To draw a unit circle using the polar coordinate system in gnuplot use the
following simple command: 'set polar; plot 1'. To better understand this
explicit form lets backup a little.
When we plot a regular explicit function like `y = sin(x)` we march in equal
steps in x, evaluate the provided function and plot a piecewise linear curve
between the sampled points approximating the real function. In the polar
explicit form we do exactly the same thing, but we march along the angular
direction - we turn around the origin, computing the length of the radius
at that angle. Since for the unit circle, this radius is a constant 1,
`plot 1` in polar form plots a circle (if t domain is from 0 or 2Pi).
Note the polar form is explicit in that for each angle there is only a
single radius.

Surprisingly (or maybe not so surprising) surfaces share the same
representations. Since surfaces are two dimensional entities, they
require two free parameters (like t for curves).

A surface explicit function uses x and y as the free parameters. For
each such pair it provides a single z value. An example for this form
can be `splot sin(sqrt(x**2+y**2))/sqrt(x**2+y**2)` for a three dimensional
sinc function or `splot 'datafile' using 1`. As for curves, the single column
used from the data file defines the function value or z in this case.
The order of the x and y function values is very strict in this form and
simply defines a rectangular grid in the XY plane. Fortunately this
strict form allows us to apply a very simplistic hidden line algorithm
called "the floating horizon". This hidden line algorithm exploits the
rectangular XY domain of the surface and therefore may be used for this
type of surfaces only. Since in gnuplot this is the only form of hidden
lines removing algorithm provided, only explicit surfaces may have their
hidden lines removed.

Parametric surfaces are the exact extension for explicit surfaces as in
the curves case. the x, y, and z are defined in terms of two new free
variables and are totally independent of each other as x(u, v), y(u, v),
and z(u, v). Again the explicit surface is a special case of the parametric
representation where x = u, and y = v. Examples for plotting parametric
surfaces in gnuplot can be `splot cos(u)*cos(v),cos(u)*sin(v),sin(u)` which
defines a sphere, or `splot "datafile" using 1:2:3`. Since these are
parametric surfaces, gnuplot must be informed to handle them by issuing
`set parametric`.

The curve polar form takes the obvious extensions in the surface world.
The first possible extension is spherical coordinate system, while the
second is the cylindrical one. These modes currently work for data files
only and both requires two parameters, theta and phi for mapping onto the
unit sphere, and theta and z form mapping on a unit radius cylinder as follow:

        Spherical coord.                        Cylin. coord.
        ----------------                        -------------
        x = cos( theta ) * cos( phi )           x = cos( theta )
        y = sin( theta ) * cos( phi )           y = sin( theta )
        z = sin( phi )                          z = z

This subject brings us back to non planar curves. When surfaces are displayed
under gnuplot, isocurves are actually getting plotted. An isocurve is a
curve on the surface in which one of the two free parameters of the
surface is fixed. For example the u isolines of a surface are drawn by
setting u to be fixed and varying v along the entire v domain. The v isolines
are similarly drawn by fixing v. When data files are specified they are
classified internally into two types. A surface is tagged to have grid
topology if all its specified isolines are of the same length. A data mesh
of five isolines, seven points each is an example. In such a case the
surface cross isolines are drawn as well. Seven isolines with five points
each will be automatically created and drawn for grid type data. If
however, isolines of different length are found in the data, it is
tagged as nongrid surface and in fact is nothing more than a collection
of three dimensional curves. Only the provided data is plotted in that
case (see world.dem for such an example).

README.3p2

This is the official release of GNUPLOT.3.2.  It is available in either
a patch or tar archive.  Sites for the retrieval are listed in the
README.   Below are the modifications and contributors to this release.
The patch file 3_1to3_2.patch needs to be applied with the p1 flag

>cd gnuplot
>patch -p1 < 3_1to3_2.patch

Thanks  ---  Alex Woo

* Subject: New generic gnuplot_x11.c
  Name: Ed Kubaitis
  Email: ejk@ux2.ncsa.uiuc.edu

* Subject: Hidden Line Removal for Explicit Surfaces and IRIX 4.0 fixes.
  Name: Gershon Elber
  Email: gershon@gr.utah.edu

* Subject: Table Terminal Driver.
  Name: Kevin Russo
  Email: russo@rudedog.nrl.navy.mil

* Subject: PCL5 driver fixes (HPGL page eject),datafile pipe and README.
  Name: Alex Woo
  Email: woo@ames.arc.nasa.gov

* Subject: Pbmplus driver and fix to y log tics.
  Name: Russell Lang
  Email: rjl@monu1.cc.monash.edu.au

* Subject: NeXT Console Driver.
  Name: Nick Strobel
  Email: strobel@phast.phys.washington.edu

* Subject: Fix GNUTERM environment with disk resident BGI drivers
  Name: Craig Johnston
  Email: johnston@maxwell.ee.washington.edu

* Subject: Fix tables for troff in doc2ms
  Name: Michael Schuh
  Email: schuh@ames.arc.nasa.gov

* Subject: Fix dump when GNUPLOT$HELP undefined
  Name: Wolfgang J. Moeller
  Email: moeller@gwdgv1.dnet.gwdg.de

* Subject: Fix AMIGA segment limits
  Name: Carsten Steger
  Email: stegerc@informatik.tu-muenchen.de

* Subject: Put FAR pointers in bitmap.c and bitmap.h
  Name: Russell Lang
  Email: rjl@monu1.cc.monash.edu.au

* Subject: Bug fix to latex.trm
  Name: Rob Cunningham
  Email: rkc@xn.ll.mit.edu
----------------------------------------------------------------------------

                   GNUPLOT 3.1 Patch

This package provides the upgrade of gnuplot 3.0 to patch level 1.
Below are the contributers to this upgrade and the modifications made.

Thank you all

Gershon

----------------------------------------------------------------------------

* Subject: Y log / postscript eps fix
  Name: Russell Lang
  Email: rjl@monu1.cc.monash.edu.au

* Subject: HP26 driver to lift text.
  Name: Bruce Lueckenhoff
  Email: luechen@cis.udel.edu

* Subject: CRAY prt, UIUC coordinates.
  Name: Daniel S. Lewart
  Email: d-lewart@uiuc.edu

* Subject: AI device
  Name: Ray Ghanbari
  Email: ray@mtl.mit.edu

* Subject: HP_MOTIF on a Snake, X11 for Next
  Name: Alex Woo
  Email: woo@ra-next.arc.nasa.gov

* Subject: Mod. to LaTeX for multiple curves/plots, complex atan function fix.
  Name: Ray Toy???
  Email: toy@soho.crd.ge.com

* Subject: Fix the "splot 'file.dat'" with only z values.
  Name: Gershon Elber
  Email: gershon@gr.utah.edu

* Subject: Underscore prefixed names.
  Name: Tom Tkacik
  Email: tkacik@hobbes.cs.gmr.com

* Subject: Amiga port
  Name: Carsten Steger
  Email: stegerc@informatik.tu-muenchen.de

README.3p3

Version 3.3 was never officially released.  It has been renamed
to version 3.4 to avoid confusion with the numerous BETA versions
which have made it into general circulation.  See README.3p4
for more information.

README.3p4

This is version 3.4 of Gnuplot, anonymous ftpable from
        sun.soe.clarkson.edu:~ftp/submit/gnuplot3_4.tar.Z
This is an official release.



Below is a list of all patches included. If you think other bug fixes/changes
should be included please drop me a message. These patches were tested under
the following:

1. SGI 4D (IRIX 4.0.5).
2. DEC 5000 (Ultrix).
3. IBM PC (bcc 3.1, MSDOS 5.0).
4. NeXTCube (OS 2.1)
5. CRAY Y-MP 8/128 (UNICOS 6.4)
6. VAX (VMS 5.4 without X11)
7. DEC OSF (with X11)
8. SUN Sparc 2 (OS 4.1.1)

Please try them on your favorite platform. If you contributed a patch to the
list below, please double check it was appropriately applied.

Alex Woo

----------------------------------------------------------------------------
This version of gnuplot represents the work of many people.  For a more
complete list read the RCS log on the top of makefile.unx.  This version
originally was centered on Jos Van Woude's probability functions,
Don Tabor's discrete contour levels and Rob Cunningham's binary file
IO capability.  It has grown tremendously.  Russell Lang and Maurice
Castro added MS-Windows capability and much more.  Roger Fearick
added OS/2 capabilility.  Alexander Lehmann and Hans-Edgar Koechling
greatly improved Atari support. (There are also an OS-9 and PC-9801 versions
of 3.2 and a Mac version of 3.0 and a multiple plot on a page mod
which were not integrated into this release.)  Eric Youngdale replaced the
explicit function hidden line removal routines with a more general
implicit bitmap (which requires more memory).  Gershon Elber fixed
many 3D bugs and added the "dgrid3d" option which takes allows
scattered data to be contoured.  Ed Kubaitis reworked the X11 support.
In addition, many more devices are now provided.  We have
always added device drivers because we have no way to debug most of
them and only by including them into the package we obtain feedback.

In addition, we have begun a contrib subdirectory which contains
external library, programs, and mods which help in the use of
Gnuplot.  Many of the diffs are now out of date and will take
some work to implement.

These contributions are not in any particular order.

* Subject: Special Functions for Probability Densities
  Name: Jos van der Woude
  Email: jvdwoude@hut.nl

* Subject: Discrete Contour Levels
  Name: Don Taber
  Email: news@solitary.stanford.edu,dbt@victoria.risc.rockwell.com

* Subject: LN03p (Graphic Enhance Mode) Driver and REGIS fixes
  Name: Hung-chi Lihn
  Email: lihn@ssrl01.slac.stanford.edu

* Subject: LESS-like additions to READLINE capability
  Name:    Michal Tomczak, Tom Tkacik
  Email: ntomczak@vm.ucs.ualberta.ca,tkacik@hobbes.cs.gmr.com

* Subject: doc2texinfo : Converts Gnuplot .doc files to Texinfo format.
  Name: George Ferguson
  Email: ferguson@cs.rochester.edu

* Subject: Atari ST (gcc 1.40) version  and PureC version
  Name: Alexander Lehmann, Hans-Edgar Koechling
  Email: alexlehm@iti.informatik.th-darmstadt.de,
        koechling@nvdv.e-technik.uni-stuttgart.dpe.de

* Subject: ISO 8869/1 character sets
  Name: Marius Olafsson
  Email: marius@rhi.hi.is

* Subject: HP PaintJet Driver
  Name: Dan Merget
  Email: danm@hpnmdlc0.sr.hp.com

* Subject: Improvements to HP PCL driver
  Name: Timothy Collins, Tom Swiler, Alex Woo
  Email: kaph6@solx1.central.susx.ac.uk,tom@silica.mse.ufl.edu

* Subject: plot "file" thru f(x) for transforming datafiles
  Name: Jack Veenstra
  Email: veenstra@cs.rochester.edu

* Subject: improvement to HPGL driver
  Name: Craig Johnston
  Email: johnston@maxwell.ee.washington.edu

* Subject: X11 mods
  Name: Ed Kubaitis, Yehavi Bourvine
  Email: ejk@ux2.ncsa.uiuc.edu, YEHAVI@vms.huji.ac.il

* Subject: Binary File IO
  Name: Rob Cunningham, Jos van der Woude
  Email: rkc@xn.ll.mit.edu,jvdwoude@hut.nl

* Subject: Improved Hidden Line Removal & LITE flag
  Name: Eric Youngdale
  Email: eric@tantalus.nrl.navy.mil

* Subject: xlib driver & test programs in contrib
  Name: Gregg Hanna
  Email: gregor@kafka.saic.com

* Subject: MS-Windows, boxes and boxerror styles, plot using accepts
           columns in any order, plus many, many improvements
  Name: Russell Lang, Maurice Castro
  Email: rjl@monu1.cc.monash.edu.au, maurice@bruce.cs.monash.edu.au

* Subject: OS/2 version
  Name: Roger Fearick
  Email: fearick@physci.uct.ac.za

* Subject: scatter to grid mods "set dgrid3d", plus fixes
  Name: Gershon Elber scatter to grid mods
  Email: gershon@cs.utah.edu

* Subject: Notitle option to remove entry in key
  Name: R. Shouman
  Email: rshouman@hermes.chpc.utexas.edu

* Subject: Misc. Bug Fixes, new get_data, many improvements
  Name: Daniel S. Lewart
  Email: d-lewart@uiuc.edu


* Subject: H Olav Eggestad RGIP Uniplex driver (POSIX) and Imagen driver
  Name: Hans Olav Eggestad
  Email: olav@jordforsk.nlh.no

* Subject: New plotstyle "steps" for discrete functions
  Name: John Grosh
  Email: jgrosh@brl.mil


* Subject: CorelDraw! driver (subset of EPS)
  Name: Chris Parks
  Email: parks@physics.purdue.edu

* Subject: PSTRICKS  driver (for TeX)
  Name: Ray Toy
  Email: toy@soho.crd.ge.com

* Subject: Framemaker MIF 3.0 driver
  Name: Olof Franksson
  Email: olof@ikaros.fysik4.kth.se

* Subject: Apollo mods
  Name:  Jim Richardson
  Email: jimr@maths.su.oz.au

* Subject: TGIF driver
  Name: Neal Holtz
  Email: nholtz@civeng.carleton.ca

* Subject: TPIC specials driver (TeX)
  Name: Honoo Suzuki
  Email: honoo@nc.titech.ac.jp

* Subject: Log to any base capability
  Name: Lawrence Crowl
  Email: crowl@cs.orst.edu

* Subject: Talaris EXCL driver
  Name: P. Klosowski
  Email: przemek@rrdstrad.nist.gov

* Subject: New LaTeX Driver
  Name: Xiaoguang Zhang
  Email: zhang@whbws.ms.ornl.gov

* Subject: TeXdraw driver (eepic derivative)
  Name: Khun Yee Fung
  Email: clipper@csd.uwo.ca

* Subject: debug and hp2623a driver, fixes
  Name: Bruce Lueckenoff
  Email: luecken@udel.edu

README.ami

SOME NOTES ON GNUPLOT ON THE AMIGA ...



Environment Variables:

   GNUFONT   You can say "setenv GNUFONT <Fontname>/<Pointsize>" to get the
             font of your liking on the screen, e.g.:
             "setenv GNUFONT sapphire/14".
             Otherwise gnuplot will select the default-font you chose with
             "Preferences".

   GNUHELP   Allows you to define a pathname for the gnuplot help file.  For
             example, "setenv GNUHELP TEX:gnuplot.gih"

   GNUPLOT   Your current directory is searched for the file ".gnuplot".
             If you say "setenv GNUPLOT <Path>" (without the filename!)
             gnuplot will look for it there.

   GNUTERM   You can define a default driver with "setenv GNUTERM <driver>".
             A good choice is "setenv GNUTERM amiga" :^)

   SHELL     If you don't like "NewShell" as your shell, you can say
             "setenv SHELL <Shell>".


Stack Size:

   A stack size of at least 25000 bytes should be used while running gnuplot.
   If you use recursive functions, e.g. like in "bivariat.dem", you will have
   to increase your stack size accordingly. Otherwise gnuplot will exit with
   a run time error.



--------------------------   SAS/C 6.1 VERSION   -----------------------------


Default paths/directories:

   Gnuplot looks for the file "gnuplot.gih" in your "S:"-directory unless you
   specify the full pathname including the filename via "setenv GNUHELP".




---------------------------   AZTEC C VERSION   ------------------------------

Default paths/directories:

   Gnuplot looks for the "gnuplot.gih" file in "GNUPLOT:docs/gnuplot.gih" if
   GNUHELP is not defined.   This is defined in the makefile (makefile.ami).


Terminal Drivers:

   The Aztec C version can now use the "amiga.trm" driver written by
   Carsten Steger.  Under KS/WB 2.0, a custom screen will be used with a size
   specified by the Prefs/Overscan program.

(Carsten's note: The Aztec version of gnuplot has not received any support
since the release of version 3.2. I think version 3.3 will neither compile
nor work. I don't have Aztec C, so I can't do anything about it...)

README.gnu

A note to former Gnutex users, from David Kotz (David.Kotz@Dartmouth.edu).
--------------------------------------------------------------------------

May 30, 1991

GNUTeX was merged with GNUPLOT beginning with GNUPLOT 2.0.  Many
aspects of gnutex 1.6 made it into GNUPLOT 2.0. Unfortunately for
those of us who have a lot of gnutex input files around, not
everything from gnutex is supported by GNUPLOT. To help gnutex users
with the process of adapting to GNUPLOT (and I recommend it), I have
included a section in the LaTeX/GNUPLOT tutorial (in ./docs/latextut/)
about the differences, and written a translator program.  Please read
the LaTeX/GNUPLOT tutorial.

The translator was available as part of the GNUPLOT 2.0 release, but
has been removed from the standard distribution of GNUPLOT.  The
translator is now available for anonymous ftp from cs.duke.edu as
dist/sources/gnuplot/gnut2p.tar.Z. It has not changed since GNUPLOT
2.01 (ie, GNUPLOT 2.0 patchlevel 1).

Users of gnutex that did not use the LaTeX driver will probably have
little difficulty adapting.

Please send all comments, complaints, and suggestions on this subject
to David.Kotz@Dartmouth.edu.

README.mf

MetaFont Terminal Driver for GnuPlot (MF.TRM):
----------------------------------------------
The new terminal driver creates a input file to the MetaFont program.
Thus a figure may be used in the TeX document in the same way as a
character is.

To use the plot in a document the MetaFont program must be run
with the output file from GnuPlot as input. Thus, the user needs a basic
knowledge of the font creating prosess and inclusion of a new font in a
document. However, if the Metafont program are set up properly at the
local site an unexperienced user could perform the operation without
much trouble.

The text support is based on a MetaFont character set.
Currently the Computer Modern Roman font set is input but the
user are in principal free to chose whatever fonts he/she needs.
The MetaFont source files for the chosen font must be available.
Each character is stored in a separate picture variable in MetaFont. These
variables may be manipulated (rotated, scaled etc.) when characters are
needed. The drawback is the interpretation time in the MetaFont
program. On some machines (i.e. PC) the limited amount of memory available
may also cause problem if too many pictures are stored.

The MetaFont terminal driver MF.TRM is UENCODED and included in this mail.
Also the "diff" files between an orginal TERM.C and mine are
UENCODED included. I am afraid there may be several
differences which are not due to the MetaFont terminal. However, the new
terminal driver should be included in exactly the same manner as the other.

In TERM.H the only necessary change is :

               #define MF

Please inform me if something  goes wrong. I will then transfer the code
to an anonymous FTP cite where you can pick it up.

To use the MetaFont terminal driver:
------------------------------------
1) In GnuPlot use:   set terminal mf
                     set output "myfile.mf"
                          .
                          .
                          .
                     plot ....
                     exit


2) Run MetaFont. Syntax is site dependant:

   On my UNIX I use:   cmmf '\mode=localfont; \mag=1;' input myfile.mf
   On my PC I use:     mf286 &cm \mode=localfont; \mag=1; input myfile.mf

   Be aware that MetaFont can only handle number less than 4096. Thus if you

   have very high resolution in your localfont and a large picture you will
   probably get an error message when running metaFont. To solve the
problem,
   reduce the resolution or the plot size.

3) Run GfToPk, syntax is

   on my UNIX:   gftpk myfile.xxxgf myfile.pk
   on my PC:     gftpk myfile.xxx myfile.pk

   where xxx is the resolution (typically 300).

   The version of GfToPk included with unix TeX3.14 probably needs to be
   compiled with more memory than it is. Third line in GFTOPK.C declares
   a variable "maxrow". Defining this to 32000 should be sufficient.

4) Copy the files myfile.pk and myfile.tfm to a place where you are sure TeX
   and the dvi processing programs you use  can find them. (They can
probably
   be located in your current working directory)

5) Include in your TeX document the following statement:

      \font\myfont=myfile  % Declares the new font you just have made
      {\myfont\char0}      % Typeset character with code zero which
                           % MF.TRM uses as default character





HPGL to GnuPlot converter (HPG2GNU):
-------------------------------------
I have also written a program which interprets files written in
Hewlett Packard's plotter language, HPGL, and outputs the graphic
on an available GnuPlot terminal.

Personally, I have used the program as an link to the MetaFont terminal
(the orginal version of the program only translated from HPGL to MF).
This way I am able to design pictures in my favorite graphic drawing
program,
export the figures to HPGL files and translate to MetaFont. A lot of new
symbols (fancy arrows, electronic components, process symbols etc. etc.)
can thus be  made available to TeX as new font sets without the need to dig
into the MetaFont manual.

However, the program is now mainly based on code from the GnuPlot
program and according to the copyright notes should not be distributed.


With regard

Paal Hedne
SINTEF Multiphase Laboratory
N-7034 Trondheim
Norway

Tel.: -47-7-591060
E.mail: Pal.Hedne@termo.unit.no

README.nex

        This directory contains version 2 of the additional files
you'll need to get gnuplot3.0 to display it's postscript directly to a
window instead of going through the klunky process of writing the
postscript to a file and launching Previewer to view the file.  Note
that all input is still done at the shell level! Fancier NeXTStep
interfaces will be a future project.

        This version is faster and leaner than the old method.  It
also does not eat up swap space like the older version (this was
particularly noticeable when doing animation-like plots).  To do this
I used DPS function calls instead of creating a NXImage and
compositing the stream of commands. I based my code on the program
called "epsview" in the hackkit tar file on the archive servers.

        The next.trm (next terminal) is basically the post.trm
(postscript terminal) with the fprintf replaced by DPSPrintf and
outfile by the DPSContext d.  You'll also see that I also used some
code (with modifications) from David S. Joerg's MovieApp.  Using the
DPS functions enabled me to slim down the EpsViewer.[hm] and
EPSView.[hm] files.

        No claim is made to code elegance or to it being a good example of
objective-c coding.  This is my first (well, second, sort of) objective-c
program. It seems to work for me. Any constructive criticism would be
appreciated.  I can be reached at strobel@phast.phys.washington.edu

cheers!

nick strobel

README.os2

GNUPLOT 3.3 for OS/2 v 2.0
==========================

1) Introduction
===============

This file discusses the version of GNUPLOT 3.3 implemented for OS/2 2.0.

The command line interface of GNUPLOT is retained, while graphics output is
plotted in a Presentation Manager Window. The GNUPLOT command line
appears in another text-mode window on the screen.

The PM window has facilities for printing the plot on the default printer,
for changing the fonts used on the plot, and for switching between different
ways of plotting the lines (with colour, as dot/dashed lines, or both).

The command line window offers the usual GNUPLOT interface. Both Unix-style
and DOS-style editing keys are supported.

The GNUPLOT program was compiled with the emx version of the GNU compiler.
It supports the shell command (type 'exit' to return to GNUPLOT), can pipe
datafiles through external commands using '<', and supports command-line
substitution. It runs the full set of demonstration programs supplied in
the GNUPLOT source code distribution without problems.

The GNUPLOT 3.3 port to OS/2 differs slightly from the 3.2 port, in that
the PM driver is started from GNUPLOT, rather than the other way round.
This means that the program name will have to be changed in the program
object that runs GNUPLOT, if you install 3.3 over 3.2.
This change does however make the GNUPLOT command line accessible to programs
that pipe commands to GNUPLOT.


2) Running GNUPLOT
==================

GNUPLOT can be run from the command line of an OS/2 session (preferrably
a windowed command session, so that the command line and the displayed
graph can be viewed at the same time), or can be set up as a program object
in the WPS.

GNUPLOT starts up as a command line session which accepts the usual
GNUPLOT input. The Presentation Manager window for graphics display
is only opened when the first 'plot' or 'splot' command is entered.

If GNUPLOT is set up as a program object, it can be configured for
'drag and drop' in the usual way, by specifying '%*' as the program
parameter.

The PM window has facilities for printing the plot, for changing
the fonts used in the plot, and so on. These of course are handled
through the usual PM interface.
In addition, you can 'drop' a font onto the window to change the font.

The usual GNUPLOT commands can also be used to produce output on
supported devices.

Settings and the positions and sizes of the windows can be saved in
the file gnushell.ini. This file is saved in the program's working
directory; several different directories can be set up (as program
objects) with different options, if you wish.

GNUPLOT can be run with the PM display window maximised: clicking on
the 'GNUPLOT' menu item (or pressing 'ESC') will bring the GNUPLOT
window to the foreground; it will disappear again when plotting begins.

GNUPLOT itself communicates with the PM display window (which is a
separate program) through a named pipe. Plotting commands are sent to
the PM window which produces the plot when all commands have been received.

3) The port of GNUPLOT to OS/2
==============================

Changes to the code have been kept minimal. Besides the obvious addition
of the PM driver code, the following are the major changes:

1) Addition of code in readline.c to map keypad keys to editing functions,
   to duplicate the MS-DOS mode of editing the command line. (See GNUPLOT manual,
   page 2.)

The rest of the changes are associated with defining the use of the OS2
conditional value, and setting system-dependent stuff like names, signal
handling, and end-of-line handling (LF vs CR+LF).

See the file patches.os2 for changes to the GNUPLOT source.

4) gnupmdrv.exe
===============

Gnupmdrv.exe is the 'outboard' driver for GNUPLOT. It is a multithreaded
PM program.

Roger Fearick
fearick@physci.uct.ac.za
5 November 1992

README.pro

The modifications to gnuplot 3.2 in this directory add the
capability of plotting probability distributions.

This mod adds the following extra standard gnuplot functions:

ibeta   - incomplete beta function
igamma  - incomplete gamma function
lgamma  - natural log of gamma
gamma   - gamma function
erf     - error function (= trivial variation of infamous bell curve)
erfc    - 1.0 - error function (more accurate than 1.0 - erf yourself)
rand    - pseudo random number generator (in compliance with Knuth)

using these things as building blocks, a gnuplot command file 'stat.inc'
is provided with definitions of almost all statistical distributions.

Author: Jos van der Woude, jvdwoude@hut.nl

==========================================================
Directions to install gnuplot 3.3:
(diffs are relative to gnuplot 3.0, patchlevel 2.0)

If you have a BSD machine, add the following to
the makefile.unx:

OPTIONS = -DERF -DGAMMA

and specfun.c to the SOURCES and specfun.o to the OBJECTS.

For MSDOS machines (and non-BSD machines) do the following:

ASSUMPTIONS:
The diffs provided work for msdos based pc's, using turbo C, version 2.0,
and Borland C++, version 2.0 or 3.0.
If you use a different setup, you might have to make (some) changes.

GOAL:
To extend the standard function library of gnuplot 3.2 with the following
functions:

ibeta    - incomplete beta function
igamma   - incomplete gamma function
erf()    - error function (= trivial variation of normal distribution function)
erfc()   - 1.0 - erf() (more accurate than computing 1.0 - erf() yourself)
gamma()  - gamma function (for entire domain!)
lgamma() - natural logarithm of gamma function
rand()   - a statistical acceptable version of standard C rand() function

These additions to the repertoire of standard functions turn gnuplot into
an excellent tool for plotting statistical density and distribution functions.

DETAILED INSTRUCTIONS:
0. Split the bottom part of this file into the appropriate files:
   readme.p3, patch3.dif, stat.inc, nomo95.dem, random.dem, prob.dem,
   prob2.dem, and specfun.c using an editor or a PD PC shar utility.

1. Use the patch program to generate new versions of:
   gnuplot.doc, command.c, internal.c, misc.c, parse.c, plot.c, plot.h,
   standard.c, util.c and version.c

2. Make sure that file specfun.c is in the gnuplot directory.

3. Use the make program to create new version of gnuplot.

4. Test the new functions with commmand files prob.dem, prob2.dem,
   random.dem and nomo95.dem.

KNOWN BUG:
On MSDOS machines this modification can result in a DGROUP segment overflow
error at link time. The reason is that gnuplot uses the resources of the
large memory model right up to the limit.
There are two things you can do about this:

1. Compile gnuplot using the huge memory model.
   This was tested using Borland C++, version 2.0: Works fine, even with
   -DREADLINE enabled.

2. If you dont want to compile under the huge memory model you can try to
   disable unused terminal drivers in term.h. See instructions at top
   of file term.h.


Happy plotting,

Jos van der Woude
Amsterdam, The Netherlands
jvdwoude@hut.nl

README.win

README file for MS Windows version of gnuplot.
28th January 1993

Windows gnuplot requires 4 files to run:
    WGNUPLOT.EXE        Main program
    WGNUPLOT.DLL        Graphics and Text window library
    WGNUPLOT.HLP        Windows Help file
    WGNUPLOT.MNU        Menu file
These 4 files must be in the same directory.

More information is available from gnuplot 'help set terminal windows'.

WGNUPLOT runs in standard and enhanced modes.

Windows 3.1 is preferred, but it will run under Windows 3.0
with the following restrictions:
1. COMMDLG.DLL and SHELL.DLL (available with Windows 3.1 or Borland C++ 3.1)
   must be in the windows directory.
2. WGNUPLOT.HLP produced by Borland C++ 3.1 is in Windows 3.1 format.
   You need to use the WINHELP.EXE supplied with Borland C++ 3.1.
3. WGNUPLOT won't run in real mode due to lack of memory.
4. Truetype fonts are not available in the graph window.
5. Drag-drop does not work.

The Borland makefile is makefile.win.
Windows gnuplot has only been tested with Borland C++ 3.1.  
Before making wgnuplot you will need to edit the TC = line 
to specify the location of your compiler.

The Microsoft C 7.0 makefile is makefile.msw.
This version has had very little testing and currently crashes
if you set samples >= 2048.

README.x11

X11 changes for gnuplot 3.3
---------------------------

Enhancements
------------

   o VMS X11 support (Jehavi Bourvine)

   o New X11 rendering for 'points' plotting style improves point
     quality and eliminates the 'X11' terminal type whose only
     function was to request multi-colored points. (Russell Lang)

   o tailorable linewidths, dash styles, and point sizes (see
     the man page)

   o Color handling:

       - "colorname,intensity" where 0 < intensity < 1
         For example, 'blue,.5' means a half intensity blue

       - hexadecimal RGB colors accepted (needed for HP VUE)

       - Failure to parse/allocate a color defaults to black
         for that color rather than monochrome for whole plot

   o 'set term x11' assumed if '-display' option on command line.

Bug Fixes
---------

   o On monochrome servers, any lines plotted before the first label
     was printed were lost. This lost zero axes and garbled some
     other plots. (Kenneth H. Carpenter)

   o User specified geometry position ignored with some window managers.
     Negative positions miscalculated. (Mike Coleman)


Vendor Botch Circumventions
---------------------------

   o New X11FLAGS options:

      - OW_BOTCH circumvents "ld.so: Undefined symbol: __XtInherit"
        loader errors on Sun Open Windows platforms. (Vivek Khera)

      - ISC22 circumvents select() problem with ISC2.2 (Robert Eckardt)

      - BSD_TYPES pulls select FD_SET definitions from <sys/bsdtypes.h>
        (Michael Herrmann)

      - ULTRIX_KLUDGE expanded to circumvent missing demo plots at
        Ultrix 4.1 (chan@holo.iitsg.nrc.ca)

   o Random window geometry with Esix X11R3 (Al Bolduc)


Miscellaneous
-------------

   o The man page has been updated to document that background and
     foreground are not honored for monochrome displays, only -rv
     and 'gnuplot*reverseVideo:on'.

   o '-tvtwm' command line option and gnuplot*tvtwm resource

     Mike Coleman's fix for user-specified geometry position for
     other window managers causes tvtwm to use absolute rather
     then virtual-relative coordinates when the user specifies
     geometry. This command line option and resource tells
     gnuplot_x11 to use PPosition (virtual-relative) when a
     geometry position is requested.

     Unfortunately, negative y positions are off by the size of the
     window manager title bar. Thus, for example, -0-20 rather than
     -0-0 is needed to place the lower right corner of the window
     at the lower right corner of the screen.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.