home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fish 'n' More 2
/
fishmore-publicdomainlibraryvol.ii1991xetec.iso
/
dirs
/
multiplot_467.lzh
/
Multiplot
/
Docs
/
Multiplot.doc
< prev
next >
Wrap
Text File
|
1991-03-10
|
67KB
|
1,376 lines
MULTIPLOT XLNd
These programs are available for free* distribution.
All rights to the source code, programs and text belong to, and
copyrights are held by, Alan Baxter and Tim Mooney.
DISTRIBUTION CONDITIONS SPECIFICALLY EXCLUDE REDISTRIBUTION FOR
PROFIT.
March 3, 1991
Walter & Eliza Hall Institute,
c/o Post Office, Royal Melbourne Hospital,
Parkville 3053.
VICTORIA
This is the 4th release of Multiplot XLN. It is
expected to receive distribution via the Fred Fish Freely Distributable
Software Library. If you notice any repeatable bugs or have any suggestions
for improvement of enhancement, please send them to me at the address below.
HISTORY
Multiplot was originally written by Tim Mooney as a plotting utility for
use with mCAD, his freeware CAD program. It supported a flexible input
textfile format, many plotting options, and HPGL plotter output. It was not
an intuitive program, and its full power was difficult to realize. It was also
very limited in output formats and had no support for printers. Some of these
problems were addressed in PLOT, an intuition interface which created an
environment from which Multiplot and a collection of conversion files could
be called. However the major problem of a non-intuitive way of selecting
plotting options remained (the "How to Plot" window), and it was not possible
to print output from within the program.
Multiplot XLN resolves these problems.
DISTRIBUTION CONDITIONS
Multiplot is not in the public domain. It is neither freeware, shareware
nor commercial. It may be freely distributed, but not included in a commercial
package, compilation collection, or sold, traded, leased or hired in any form
or on any media without express consent of both authors. It is periodically
released to Mr Fred Fish, who is licensed to distribute it in any form he sees
fit providing the distribution package contains documentation, source and
examples. This package may then be compressed and posted on any non-profit
electronic distribution service. Specifically, inclusion of Multiplot on
commercial electronic information services or in software compilation
collections which are sold for profit is forbidden and breeches will be pursued
with a tenacity rarely seen.
These programs are in no way designed or intended for professional use.
Any damages or losses resulting from inappropriate application of any or all
of this distribution whether accidental or intentional, are not the
responsibility of the authors, their agents, their mothers or their labradors;
and should not, under any circumstances, be compounded by attempting long
and fruitless legal action.
All rights to the source code and programs are reserved. Modifications
may be made to the source code for personal use to suit local requirements,
but should not be widely distributed. We would very much like to see such
modifications to consider inclusion in the generally distributed version.
The inclusion of the PLT: device with Multiplot in no way implies any
change in, or affects the distribution conditions of that package. Please read
the documentation provided with PLT: for further information.
SUMMARY
Multiplot XLN is a fully intuitive data plotting program. It plots data
points as (x,y) coordinates with or without error bars. It can plot an
unlimited number of sets of any number of data points using colour, line
type, point shape and point size to represent the different sets. A set may be
joined by a line or plotted as discrete points. Data may be scatter plotted, or
shown as a step graph. Additions to the data may be made in the form of
lines of best fit (logarithmic, exponential, linear and polynomial) and data
smoothing utilising modified open b-splines or averaging filtration. The input
file for multiplot is a simple textfile and my be created in the NotePad or
saved from any spreadsheet. Multiplot fully supports the clipboard, and data
input may be achieved solely through it.
Output may be in any of the following formats: IntroCAD, Draw, mCAD,
IFF, HPGL/2 EPSF or Postscript. The graph can be printed to any
workbench printer by transparent use of the PLT: device. Multiplot directly
supports Postscript laser printers such as the Apple Laser printer; and the HP
LaserJet III.
REQUIREMENTS
* Workbench 1.3 (or higher) containing: Maths libraries The C: directory
must contain the files c:run, c:failat c:mount and c:type.
* The PLT: device is necessary for printing. It consists of:
- Plt-handler in the l: directory
- The mountlist entry for plt added to the devs:mountlist
- Assignment of the PLTDATA: directory containing PLT fonts.
* At least 1/2 Mb RAM.
* The files Multiplot, txt_2_icad, plot2draw and HPGL2PS must be kept
together in the same directory.
* The font Topaz.11 is used for all screen text. Topaz.11 should be placed
in the WB1.3 Fonts: directory. Note that this is unnecessary with WB2.0
because it is in ROM.
* Plot text currently uses Courier font sizes 14 and 24 point. If these
fonts are absent, Topaz.11 or failing that, the default font will be used.
INPUT FILE FORMAT
Multiplot accepts a simple ASCII file for input of data. This file may be
written on any text editor, including the NotePad, or may be generated as a
textfile from a spreadsheet. Multiplot does not choke on the
linefeed/carriage-return of IBM style spreadsheets. The data must consist of
columns of numbers and need not contain text.
Text heading the file will be ignored and may be used for an
explanatory note. Lines beginning with the text below are of special
significance:
*TITLE* Text will be used for a title (optional).
*XLABEL* Text will be used for a label on X axis (optional).
*YLABEL* Text will be used for a label on Y axis (optional).
*LEGEND* The text will be used as a label for the following data set
(optional).
*SCALFACT* The key word should be followed by the same number of
values as there are columns of data in the file. The
numbers in each column will be multiplied by the
*SCALFACT* value in the respective column. (optional).
*AUTOSCRIPT*, *XAXISDATA* and *YAXISDATA*
are reserved keywords that indicate the file has been
written by Multiplot. They should not be used in import
files. (*AUTOSCRIPT* is a trademark of BioSoft Pty Ltd.)
*EXTRATEXT* is a reserved keyword that indicates that arbitrary text
and its placement has been written by Multiplot. It should
not be used in import files.
Note that *LEGEND* and *SCALFACT* can be used repeatedly through
the data file.
Blank lines or lines of text interrupting the columns of numbers are
interpreted as separating sets of data, and each set will be plotted
individually in, for example, a different colour or point size. See "plotme.dat"
or "eric.dat" for examples of input file format.
STARTING OUT
From the CLI:
multiplot [-[O][B#]] [filename]
Type 'multiplot' with or without the filename of the input data file. If a
'?' is used as an argument, a simple description of usage is given. The '-O'
option will prevent an overscan screen being opened. This option will have no
effect if you are not using an overdimensional workbench. The B option will
set the number of bitplanes for the screen. The # value must immediately
follow the B and may be one of 1->4. The number of bitplanes affects the
number of on-screen colours as follows:
1 bitplane ---> 2 colours
2 bitplanes ---> 4 colours
3 bitplanes ---> 8 colours
4 bitplanes ---> 16 colours
For example, the following are valid invocations of Multiplot:
Multiplot -OB1 plotme.dat (Autoloads named file into a 2
colour screen with no overscan)
Multiplot -B2 plotme.dat (Autoloads named file into a 4
colour screen with overscan if
Workbench is overscanned )
Multiplot -B3O plotme.dat (Autoloads named file into a 8
colour screen with no overscan)
Multiplot -B4 (Starts Multiplot with file requester
and a 16 colour screen with overscan
if Workbench is overscanned)
Multiplot (Starts Multiplot with file requester
and a 16 colour screen with overscan
if Workbench is overscanned)
Multiplot must be started either from within its own directory, or by
including the file path from the current directory. It cannot be invoked by
adding it to a default command path like the C: directory. This limitation may
be overcome by the use of the alias command.
eg:
alias Multiplot "dh0:<path>/Multiplot -O"
From the Workbench:
Double click on the Multiplot icon OR Edit your input file in a simple
editor (NotePad will do fine), and save with an icon. You can then change
the file's default tool (INFO from the left hand Workbench menu) to
Multiplot:Multiplot or whatever the file path is. Multiplot will then be
automatically invoked when the file is double clicked. An alternative to this
is to not change the file's default tool, but to click on the file to highlight
it, hold the shift key down, and then double click on the Multiplot icon.
OVERSCAN SCREENS
If you are using an overscan WorkBench (via MoreRows or some other
trickery) Multiplot will attempt to open a screen the same size as your
workbench screen. This enables you to make the most of the resolution of
your monitor. It is not usually possible to open a 16 colour interlace high
resolution screen with overscan unless you have 1Mb chip ram.
The maximum overscan available is 705 x 562 on a PAL machine or 705 x
450 on an NTSC machine. If the WorkBench overscan exceeds these values a
default size screen is opened. It is important to note that on PAL machines,
some saved preferences result in a screen that requires too much bandwidth
to be supported by a standard Amiga. In this event a shorter NTSC sized
screen is opened by Amiga DOS, but Multiplot will continue to access the
screen in the belief it has a PAL sized screen. Providing the dimensions of
the workbench screen are less that those above and the machine has 1 Mb
chip ram, this may be corrected by quitting the program, and shifting the
screen to the left in the screen location setter in the preferences program.
The default to overscan can be prevented in three ways:
1) Use a standard Workbench.
2) If starting from the CLI, use the -O option as the first
argument.
3) If starting from the workbench, set the TOOLTYPES string in
the info requester for the Multiplot icon to "OVERSCAN=OFF"
(without the quotes).
If the system has little chip ram or it is greatly fragmented, Multiplot
may be unable to open a screen at all. In this case, you will see an
"Insufficient Memory" warning and the program will quit. Close extra
windows, quit unneeded programs, and try again. If chip ram is badly
fragmented, you will need to reboot.
MEMORY CONSERVATION
Multiplot can be used successfully on Amigas with 1/2 Mb RAM or 1/2
Mb chip ram if care is taken to conserve memory. The following measures
should be used either separately or together, depending on requirements:
1) Assign T: to a disk, not RAM. Multiplot uses the T: directory
to write temporary files.
2) Assign CLIPS: to a disk, not RAM. Multiplot uses the CLIPS:
directory to store data pasted to the clipboard.
3) Do not have the fonts Courier.14 and Courier.24 in the
FONTS: directory. If they are absent, Multiplot will use the
default font. If using WB1.3, do not have Topaz.11 in the
FONTS: directory.
4) If starting from the CLI, use the -O option as the first
argument. This will prevent Multiplot opening an overscanned
screen.
5) If starting from the workbench, set the TOOLTYPES string in
the info requester for the Multiplot icon to "OVERSCAN=OFF"
(without the quotes). This will prevent Multiplot opening an
overscanned screen.
6) If starting from the CLI, use the -B option to reduce the
number of bitplanes used for Multiplot's screen. This is
important for machines with 1/2 Mb Chip RAM.
7) If starting from the workbench, set the TOOLTYPES string in
the info requester for the Multiplot icon to "BITPLANES=#"
(without the quotes). If # is less than 4, Multiplot will open a
screen with fewer colours. This is important for machines with
1/2 Mb Chip RAM.
If Multiplot is run on a PAL Amiga with no overscan and a 1 bitplane (2
colour) screen, it uses 208 Kb before loading data, and 226 Kb after loading a
moderately large data file.
PHILOSOPHY OF THE USER INTERFACE
Multiplot fully supports the Amiga's graphical user interface. Below are
listed a few of the important features of this interface that relate to the use
of Multiplot.
1) An item is a pictorial representation of something on the screen.
2) An item to be worked on is first selected, and then the desired
action is performed.
3) An item may be selected by moving the mouse pointer over it and
clicking the left mouse button. This action will highlight, change or
place a box around the item to indicate that it has been selected. If
the item is a button ("gadget"), selecting it may invoke some
specific action. If this is the case, the picture on the item should
give some idea of what the action is. Multiplot makes extensive use
of buttons that indicate the status of a selection. For example, the
line type button has as its picture the type of line currently in use.
Selecting this button will change the picture and the line type to
another choice.
Note that the points of a data set are items, but the joining lines
are not; thus a data set can only be selected by clicking on one of
its points.
Multiple items can be selected together by selecting one, pressing
and holding down the shift key, and selecting the rest. This is
called "group selection".
4) Special activity relating to an item may be started by placing the
pointer over it and clicking the left mouse button twice in rapid
succession ("double clicking"). In Multiplot, this action will usually
open a special window allowing you to edit characteristics of the
selected item(s).
5) Some other actions which may be performed on the selected item(s)
may be found in the menu bar. These may be selected by placing the
pointer over the title bar at the top of the screen and pressing and
holding down the right mouse button while moving the over the
selections that drop down from the title bar. A selection is made by
releasing the right mouse button over a selection, or by clicking the
left mouse button. Multiple selections can be made by clicking the
left mouse button over each of the desired options before releasing
the right mouse button.
6) Some items are movable. An item may be moved by placing the
pointer over it and pressing and holding down the left mouse
button while moving the pointer to the new location. This is called
select-dragging. Only text and data points may be moved in
Multiplot. Multiple items can be select-dragged by group selecting
them first.
7) The delete key will remove item(s) that have been selected. The
item(s) may be retrieved by selecting Undelete from the EDIT menu.
Only text, data points and whole data sets may be deleted from
Multiplot.
7) The escape key will quit the program, or if a special window is
open, will quit the window without changes.
8) The return key will allow continuation of work, will proceed to the
next selection, or will accept changes and implement them.
THE DATA SELECTION WINDOW
After being started, Multiplot tries to work out whether it is on a PAL
or NTSC machine, and opens a screen of the appropriate size. If an overscan
workbench is used, a screen as large as possible up to the size of the
workbench screen will be opened. The screen's palette is read from the file
"MPlot.def" which should be in either the same directory as Multiplot or the
s: directory. If it is not found, you will be informed and a screen the colour
of vomit will be opened. This should encourage you to save a new default
palette!
The next thing you may see is the DATA SELECTION WINDOW. If you
started Multiplot by telling it what file you wanted to plot, the file's name
will be in a little box. If Multiplot is invoked without telling it what file you
want, the default file name will appear in the box. The PATH button will call
up a file requester to help with browsing directory trees looking for wanted
data files. The NONE button will clear the file name. If you continue plotting
without a file name, a blank plot window will be opened into which clipboard
data may be pasted. Beneath the file selection box are four other boxes to
indicate what column the X, Y and Error values are in. A '0' indicates values
are absent.
For example if the Error box has a '0', no error bars will be plotted. If
the X box has a '0', the X values will be assumed to start at 0 and increase
by 1 with each data point. If the Low Error box has a '0' but the Error box
does not, the error bars will be assumed to be symmetrical about the data
point. If however, the Low Error column is defined, asymmetrical error bars
may be plotted. When satisfied with the file and column specification, hit the
return key or click on the Continue=> arrow.
The selected data file will be checked to ensure it has the number of
columns required, and loaded if suitable.
If the file you identified when invoking Multiplot has previously been
written by Multiplot, it will autoload without presenting you with the DATA
SELECTION WINDOW.
THE PLOT WINDOW
The PLOT window fills the entire high resolution screen and contains a
hand crafted menu for your computing pleasure. Visible on the window will be
a default plot of your data. This plot will show lines and points with a
different colour and point type for each data set.
The PLOT window contains 5 regions. The central area is where the data
is represented. The left margin contains the Y values and Y axis label. The
right margin contains the legend. The lower margin contains the X values and
the X axis label and the top margin contains the title.
On starting Multiplot, the pointer action is set to SELECT. In this mode
it is possible to select objects to alter their characteristics. A data set may
be selected by clicking the left mouse button near one of its points. A legend
may be selected by clicking the left mouse button on it. In this mode, double
clicking on an object will call up window to change some feature of the
object. Double clicking on a point in a data set will call up the CUSTOM
PLOT window, and allow you to change line type, colour, point type and point
size of the data set. It will even allow you to skip rendering that set or
delete it completely. Double clicking on a legend will call the EDIT TEXT
window, to allow you to edit the text in the legend. Double clicking in the
top margin will call up the EDIT TEXT window to allow you to edit or add a
title. Double clicking in the bottom or left margin calls up the X AXIS or Y
AXIS windows, which allow you to set the minimum and maximum tic values,
the number of tics, and edit the axis label. Double clicking on an axis value
allows you to edit the text of that value. This text will be reset on rescaling
the axis unless the axis values lock is set in the AXIS window.
In the SELECT mode, it is possible to move text around the screen by
pressing the left mouse button while the pointer is over the text, holding it
down, and dragging the text to the desired location. If the movement is small,
a screen refresh may need to by forced by selecting the menu option
ACTIONS/Redraw.
Several blocks of text can be moved together, without changing their
relationship to each other by group selecting them. Click on one block of
text, hold down the shift key and select the others, then without releasing
the left mouse button, drag the blocks of text to their new location.
Single data points can be moved in a similar manner. To select a data
point, click the left mouse button near it while holding down the Ctrl key.
Several data points may be group selected by holding down the shift key as
well as the Ctrl key while selecting the points.
Multiple items of different natures may be group selected together. It is
possible to select whole data sets, single points and text in one go. Note
however that only data points and text can be moved.
Also available in the SELECT mode, is a curve reader. If the Alt key is
held down when the left mouse button is pressed, the coordinates of the
point indicated will be given. The curve reader automatically compensates for
log axes, zooming and sliding.
The pointer action can be set to ZOOM or SLIDE by selecting these
subitems from the Pointer Action option in the EDIT menu. The action of
the pointer in these modes is described below.
The menus available are PROJECT which relates to the loading, saving
and printing of plots, EDIT which allows you to delete, copy, paste, import
and export data and text, ACTIONS which allows modification of the plot,
resizing, shifting and zoom, OPTIONS which changes the screen palette,
changes the axes, grid and cross hair on or off, and FUNCTIONS which
allows special actions like data smoothing, line fitting and data sorting. The
major menu selections are described below.
TEXT IN MULTIPLOT
Multiplot supports three kinds of text: Operator independent, operator
semidependent and operator dependent.
** Operator Independent Text
The title, X axis label and Y axis label are operator independent. Their
text is rendered in a preset position and cannot be moved. Their content
can be edited by double clicking on them.
** Operator Semi-Dependent Text
The legends and axis values are operator semi-dependent. They are
created in a default position but may be moved by select-dragging and
edited by double clicking.
The legends are created with a small line in the relevant
colour/line-type to their left and are placed in the right margin which is
sized to fit them in an aesthetically pleasing manner.
The axis values are a special type of Operator Semi-Dependent text. In
general, Multiplot tries to update the axis values as you change the
characteristics of your graph. For example, if you zoom in or out,
Multiplot will replace the axis values with new values. If you decide to
toggle the right margin, Multiplot will move the axis values with the
associated tic mark to the correct position on the axis.
These alterations may not be desired, and may actually move or change
the text of a lovingly edited axis value. If you _do not_ wish Multiplot
to move or update your axis values, turn the Axis Values Lock ON, either
by the OPTIONS/Lock menu or by calling up the edit Axis window
(double click the left mouse button over the axis).
** Operator Dependent Text
Any text added to enhance a plot (arbitrary text) must be dragged to the
desired location by the user. It can be edited or deleted in the normal
manner.
Text representation in Multiplot is complicated by the bit mapped nature
of the Amiga fonts. Multiplot handles graphics by vector mapping. That is, it
draws lines by deciding on a starting point and an end point and joining them
with a line of the highest resolution it can. This is why it manages to
support CAD and DTP programs through its various output formats, why it
can draw to a screen of any size, and why its printed output looks so
smooth. The Amiga fonts are bit mapped. That is rather like drawing by
colouring in the squares of a crossword puzzle.
Multiplot has to try to cope with the inability of Amiga fonts to scale or
provide satisfactory printed output. As a result, Multiplot maintains two
"layers". The lower layer is scalable and contains the data points, lines, axes,
tics and error bars. The upper, superimposed layer is the bitmapped layer in
which the Amiga fonts reside. This layer does not scale.
On screen text in Multiplot represents the actual location and size of
printed text as a proportion of the graph's overall dimensions. The printed
font used is the HP-GL default font, which is similar to Courier. On screen,
this font may be represented by any mono-spaced font, and Courier is used if
present in the Fonts: directory. Otherwise the default topaz.9 is used. A font
requester will be added in the forthcoming OS/2 version of Multiplot.
THE PROJECT MENU
OPEN (Left-Amiga O) Returns you to the DATA SELECTION window
for loading a new file.
SAVE (Left-Amiga S) Saves data, formatting and text as a Multiplot
file, overwriting original data file.
SAVE AS Plots may be saved in any of the following
formats: IFF (loads into DPaint), Draw (loads
into Draw2000 etc), IntroCAD (an excellent CAD
program), mCAD (a PD CAD program), HPGL
plotter language, Encapsulated Postscript and
Postscript.
Please note the following restrictions:
Currently Draw, IntroCAD, and mCAD saves do not include the
numbers or labels on axes. This is because of the lack of font
support in these programs. Draw saves require the program
Plot2Draw to be in the same directory as Multiplot. IntroCAD
saves require the program Txt_2_Icad to be in the same
directory as Multiplot. EPSF and postscript saves require the
program HPGL2PS to be in the same directory as Multiplot.
Also note:
# Neither Professional Page nor PageStream handle Draw
files with large dimensions very well. If your dimensions
are greater than 200 units, these programs often
scramble the data. Rescale your data to keep within
these limits if you wish to import to either of these
programs. Data may be rescaled by adding a line to the
data file which begins with "*SCALFACT*" and contains
scale factors by which data following is to be multiplied.
Scale factor columns map to data columns after the
keyword "*SCALFACT*" is discarded.
# Professional Page does not recognise Draw format line
types. All line type information is lost in transferring
Draw format plots to Professional Page.
# PixelScript does not support PostScript line types. All line
type information is lost when transferring postscript
output to Pixel Script.
# mCAD does not handle plots with small dimensions very
well. If your data is in hundredths of units, mCAD will
not plot anything on the screen. This can be corrected
by using *SCALFACT* to rescale data.
# CAD file formats are very poorly optimised. As a result,
saves of large plots may take a long time.
PRINT PREVIEW Print preview is achieved via the transparent
use of the PLT: device. The plt-handler must be
in your l: directory, and the PLT: mountlist
must be added to your DEVS:mountlist. You do
not need to mount the device. Multiplot will
mount PLT: automatically if it is not already
mounted.
PRINT SETUP Opens the Print Setup window which allows the
selection of print orientation, size and position
on the page. The print spooler can be toggled
on or off from this window.
PRINT (Left-Amiga P) Printing is achieved via the transparent use of
the PLT: device. The plt-handler must be in
your l: directory, and the PLT: mountlist must
be added to your DEVS:mountlist. You do not
need to mount the device. Multiplot will mount
PLT: automatically if it is not already
mounted.
Notes on use of Plt:
# Plt: opens its own window on the workbench when it
starts up. This window relays information about how
much of the image has been printed and the remaining
system memory. It also provides a "close gadget" (The
square with a dot in it for closing windows) which will
abort the print. Use the left-Amiga-M and left-Amiga-N
key combinations to switch between Multiplot's screen
and the workbench. This will be corrected in a future
release of Plt:.
# Multiplot checks for the presence of the Plt-handler in
the L: directory before attempting to mount Plt:. If this
file is not present, Multiplot will not print, even if the
Plt: device has been mounted by some other mechanism.
# The Plt: device checks the print resolution requested in
preferences. If you want the nicest possible quality
print-outs from Multiplot, set your printer density setting
(graphics screen 2) to "7".
QUIT (Left-Amiga Q) Quit exits the program without saving any
changes.
THE EDIT MENU
UNDELETE (Left-Amiga Z) Replaces the last blocks of text or data sets
deleted. Only a single level of undelete is
maintained, but it may contain multiple items if,
for example, several data sets were group
selected and deleted.
COPY (Left-Amiga C) Places a text version of the selected data sets
or text blocks in the clip board for transfer to
another plot or program.
PASTE (Left-Amiga V) Reads the clipboard. If the clip has been
written by Multiplot, it will be added to the
current graph. If it consists of 2 columns of
numbers, the first column will be assumed to be
X values, and the second, Y values. If there are
3 columns, the third will be assumed to be
error-in-Y. Blank rows are interpreted as
end/beginnings of data sets. Legends and text
can also be read, if they conform to the flat
file data format described above.
CUT (Left-Amiga X) Places a text version of the selected data sets
or text blocks in the clip board for transfer to
another plot or program, and then deletes it
from the current plot.
DELETE (Delete key) Removes data set(s) or block(s) of text
currently selected.
THE ACTIONS MENU
MOUSE ACTION Allows the user to select the mode in which the
mouse works. The options are Select, Zoom and
Slide.
Select (Left-Amiga-Shift !) The select mode allows the editing of
data sets or axes by double clicking the left mouse button over
them. This action calls up a window for editing their characteristics.
This mode also allows the movement of text by click-dragging, and
selection of text or data sets for manipulation. It is possible to
select multiplot data sets my selecting one set, and holding down
the shift key while selecting the other sets. The same method can
be used to group select text.
Zoom (Left-Amiga-Shift #) Allows closeup views of areas of the
data, and to adjust the axes to desired values. After selecting
ZOOM from the menu, the mouse may be used to draw a box
on the screen to indicate the area of the plot to be enlarged.
This is achieved by clicking and holding the left mouse
button, dragging the mouse, and releasing the left mouse
button. The maximum limit of enlargement is 1,600 times.
Zooming out to reduce the size of the plot by one half is
achieved by double clicking the left mouse button.
Slide (Left-Amiga-Shift ^) After selection the mouse may be
used to draw a vector on the screen to indicate the direction and
amount the plot should be moved. This is achieved by clicking and
holding the left mouse button, dragging the mouse, and releasing the
left mouse button.
AXIS SCALE LOCKS Allows either the X or Y dimension to be
frozen while the other is zoomed or rescaled.
very useful when used in conjunction with the
other items in this menu (Zoom, Slide, FullPlot).
This allows you to arrange the scale of the plot
to best advantage. The Subitem X AXIS will
lock the amount of zoom in the X axis, and the
subitem name will change to "X LOCK ON". The
lock may be turned off by reselecting the
subitem. The same applies for the Y AXIS
selection. the BOTH LOCKS ON selection will
lock both axes. They can be both turned off
with BOTH LOCKS OFF. The amount of zoom
can be manually set from the X and Y AXIS
windows. Unless locked, the following options
will reset the view of your data: Full Plot,
Redefine Plot, Sort, Linear Fit, Smooth,
Logarithmic Fit.
AXIS VALUE LOCKS Allows either the X or Y axis values to remain
unchanged despite rescaling of the axis. This
option allows the editing of axis values to
create text labels without having them moved
or overwritten.
REDRAW (Left-Amiga R) Redraws the screen with the same zoom as
currently set. It should be used to repair the
screen of unwanted rendering, or an
incomplete refresh. This option is different
from FULLPLOT and REDEFINE PLOT which
will reset to either the full plot, or if the X or
Y locks are on, to the locked plot size.
FULLPLOT (Left-Amiga F) Redraws the screen with the default axis
settings. This plot will show all data points and
the extremes of any error bars. It will not
overcome locked axis settings, so if you have
defined a set of minimum and maximum axis
values, it is wise to lock them with the BOTH
LOCKS ON option.
REDEFINE PLOT (Left-Amiga D) Presents the user with the CUSTOM
PLOT WINDOW for each data set in succession.
This is useful for editing all data sets, editing
the characteristics of a data set plotted as a
line (when it may be difficult to recognise
where the points are for selection with the
mouse) or if a data set has been skipped
(possible from the Custom Plot window) and not
plotted. This action is destructive in the sense
that any zooming that has not been locked will
be lost.
ADD TEXT (Left-Amiga A) A legend may be added to an unlabelled data
set by selecting it (single click of left mouse
button near any point of the data set) and
choosing this menu option. A EDIT TEXT
window will appear in which the legend text
may be typed. This is also another way of
editing existing legends, and can be used to add
arbitrary text if used without selecting a data
set.
THE OPTIONS MENU
CROSS HAIR (Left-Amiga L) Provides a cross hair for the cursor to
assist with zooming, sliding and movement of text blocks.
GRID (Left-Amiga G) Allows the selection of a cross grid, tics, or no
marks on the axes.
AXES Allows the selection stem and leaf (left and
lower axes shown), box or no axes drawn.
RIGHT MARGIN (Left-Amiga M) Toggles the right margin space for
legends.
PALETTE The screen palette may be altered by calling
the neat requester, which was written by RJ.
The only non obvious feature of the requester
is that by clicking the left mouse button on the
RGB characters, the requester is converted to a
hue/saturation/lightness requester for those who
think that way. The SAVE Subitem will attempt
to write a file called MPlot.def to the same
directory as Multiplot, or failing that, to the s:
directory. This file is in the same format as the
screen palette files produced by the program
"Colour" by a nationalistic Canadian bloke.
SIG FIGURES Allows the number of significant figures of
axis values and formulae to be set
independently.
ERROR BARS (Left-Amiga E) Toggles the error bars on and off. If a
data set is loaded without error bars, and error data is added later via
the EDIT POINT window, it will be necessary to select this option to get
them rendered. If error bars are unimportant, this option should be
turned off to speed screen refresh times.
THE FUNCTIONS MENU
SORT DATA This option will place the data points in order
of ascending X value. This allows other
manipulations of the data which require this
format.
SMOOTH DATA Select a data set by clicking the left mouse
button near one of its points, and then select
one of the subitems from this menu option.
Filter A new data set will be created in which each Y
value is the mean of the surrounding Y values
from the original data set. A requester will
appear enabling you to enter the number of
values each side of the point for the mean to
be taken over. This option is most suitable for
smoothing data sets containing large numbers of
points. This action is destructive in the sense
that any zooming that has not been locked will
be lost.
Interpolate A new data set will be created in which
intermediate data points are added to create a
smooth curve tracking the original data. This
option is most suitable for smoothing data sets
with relatively few points. It is sometimes
useful to provide intermediate points before
filtering to provide a smoother curve. This
action is destructive in the sense that any
zooming that has not been locked will be lost.
LINEAR FIT Select a data set by clicking the left mouse
button near one of its points, and then select
this menu option. A new data set will be
created which will represent a straight line fit
of the data. The formula of the line is shown
in the legend. This action is destructive in the
sense that any zooming that has not been
locked will be lost.
Note that the current axis settings are
taken into account for linear fits of data. For
example, if the Y axis is logarithmic and the X
axis linear, an exponential fit is produced (a
straight line on a lin/log scale). If the X axis
is logarithmic and the Y axis linear, a log fit
is produced (a straight line on a log/lin scale).
Log/log and true linear fits are also available.
POLYNOMIAL FIT Select data set by clicking the left mouse
button near one of its points, and then select
this menu option. A window will allow selection
of the order of fit. High order fits may require
extended calculation times. A new data set will
be created which will represent the appropriate
fit of the data. The formula of the line will be
displayed as its legend if the is sufficient room.
COMMAND KEY SEQUENCES
Multiplot fully supports keyboard shortcuts using the right Amiga key. A
full list of shortcuts and mnemonics is listed below:
Key Command Mnemonic
A ACTIONS/AddText <A>dd Text
B OPTIONS/Axes/Box <B>ox
C EDIT/Copy <C>opy
D ACTIONS/ReDefine Plot Re<D>efine Plot
E OPTIONS/Error Bars <E>rror Bars
F ACTIONS/Full Plot <F>ull Plot
G OPTIONS/Grid/Grid <G>rid
H PROJECT/Save as/HPGL <H>PGL
I PROJECT/Save as/ILBM <I>LBM
J not used
K PROJECT/Save as/DrawSave <K>AD format
L OPTIONS/Cross Hair Cross Hair <L>ines
M OPTIONS/Right Margin <M>argin
N PROJECT/Save as/IntroCAD I<N>troCAD
O PROJECT/Open <O>pen
P PROJECT/Print <P>rint
Q PROJECT/Quit <Q>uit
R ACTIONS/Redraw <R>edraw
S PROJECT/Save <S>ave
T OPTIONS/Grid/Tics <T>ics
U OPTIONS/Screen Title <U>p the top screen writing
V EDIT/Paste Commodore guidelines
W PROJECT/Save as/Data <W>rite data
X EDIT/Cut Commodore guidelines
Y OPTIONS/Axes/X and Y X and <Y>
Z EDIT/Undelete Commodore guidelines
Please note that there are three other keyboard shortcuts that allow you
to swap between mouse actions. These also require that the right Amiga key
is held down.
Shift-1 (!) ACTION/Mouse Action/Select
Shift-3 (#) ACTION/Mouse Action/Zoom
Shift-6 (^) ACTION/Mouse Action/Slide
The Escape and Delete keys are supported:
Esc PROJECT/Quit
Del EDIT/Delete
The Alt key is used to activate the curve reader. Holding down the Alt
key while clicking the left mouse button while in SELECT mode will result in
a window that displays the X and Y co-ordinates of the pointer.
The Shift key activates group selection when in SELECT mode.
The Ctrl key allows selection of a single data point instead of a whole
data set when in SELECT mode.
THE CUSTOM PLOT WINDOW
For each data set for plotting, this window can be called to allow you to
select plot colours and whether data is plotted as a line, series of points,
both, or a step plot. If points are drawn, the point size and point type can
be selected. If a line is drawn, the line pattern can be selected.
The colour and line type are selected by repeatedly clicking the left
mouse button on the buttons that represent the current selection shown at
the left of the window. The number between the colour and line type buttons
displays the size in pixels of points if plotted.
The plot type is selected by clicking the left mouse button while the
pointer is over the desired selection displayed in the middle of the window.
Currently, data may be plotted as points, lines, points and lines, step graph
(with or without points) and impulse plots. The point type is selected from
the panel of six mutually exclusive buttons on the right of the window.
The CONTINUE button will accept changes and proceed to the Plot
window where the plot is rendered.
The SKIP button will skip a single data set, so that it will not be
plotted when the PLOT window is opened. The missing data set can be
recalled by selecting the Redefine plot option from the EDIT menu, and
pushing the CONTINUE button when presented with the data set.
The KILL button is similar to the SKIP button but its effects are
permanent. A dead data set can be revived with EDIT/Undelete.
The STOP button will skip all remaining data sets without presenting the
Custom Plot window for them. It will not accept changes made to the data
set currently being edited.
THE AXES WINDOW
For either or both the X and Y axes, this window can be called by
double clicking the left mouse button over the axis to be edited with the
Mouse Action menu option set to SELECT mode. This window allows the
following characteristics of the axis to be edited:
* Minimum and maximum axis values. The axis scale may be reversed
by placing the higher value in the minimum value box and the lower
value in the maximum value box. This results in mirror image
reversal of the data.
* The number of major tics. The number of major tics may vary from
1 to 20.
* The number of minor tics. The number of subdivisions may vary
from 1 to 10.
* Axis scale type. The axes may be set as linear or logarithmic
independently allowing log/lin, lin/log, log/log and lin/lin plots.
* The axis label.
* A lock may be set preventing rescaling of the axis.
* A lock may be set preventing overwriting of the axis values.
Note that the current axis settings are taken into account for linear fits
of data. For example, if the Y axis is logarithmic and the X axis linear, an
exponential fit is produced (a straight line on a lin/log scale). If the X axis
is logarithmic and the Y axis linear, a log fit is produced (a straight line on
a log/lin scale). Log/log and true linear fits are also available.
THE EDIT POINT WINDOW
This window may be called up for any data point by holding down the
Ctrl key and double clicking the left mouse button near the desired data
point with the Mouse Action menu option set to SELECT mode. This window
allows the X and Y values of a point to be individually set, and the error
bars to be altered; either above or below the point. Note that the error bars
need not be symmetrical, and one direction error bars are supported.
THE PRINT SETUP WINDOW
The Print Setup window is called be selecting the PROJECT/Print Setup
menu option.
This window allows the selection of print orientation, size and position
on the page. A sliding knob sets the size of the plot. Default is for the plot
to fill the page. Clicking within the slider's run allows changes in size from
10% to 100% in 10% increments. Dragging the slider allows finer control of
the plot size. A button controls the orientation of the plot. Default is for
landscape. Orientation may be toggled between landscape and portrait by
clicking the left mouse button over the icon which represents the current
setting. The position of the plot on the page can be set by dragging the box
representing the plot to the desired location on a rectangular field
representing the printed page.
The print spool may also be toggled on and off from this window. When
the print spool is used, plot printing can continue as a background task,
while continuing work. Once the print spool has been started, Multiplot may
even be quit without interrupting printing. If it is desired that printing be
ceased, this is achieved by clicking the left mouse button on the "close
gadget" (top left corner) of the PLT window on the WorkBench.
HINTS AND TIPS
Q: What can I do to improve the appearance of the printed output on my
dot matrix printer?
A: One way to enhance the appearance of your printouts is to use different
pen thicknesses. For example, the axes could be in a thick pen, and the
grid lines in a finer pen. To achieve this, type the following line into
a CLI window before printing:
setenv pltinfo P/000-3/000-1/000-2/000-2/000-2/000-2/000-2/000-2/
Q: How do I get a line fit of only part of a data set?
A: Group select (shift-control-select) and delete the unwanted data points.
Select the set, choose the FUNCTIONS/Linear fit menu option, and select the
EDIT/Undelete menu option.
Q: Can I create a histogram from Multiplot?
A: The short answer is not yet. However it is possible to create the
appearance of a histogram by copying the data set, opening the CUSTOM
PLOT window and setting one plot type to "impulse" and the other to "step",
with a point size of 0.
Q: Is there any way I can change the font size in Multiplot?
A: Multiplot does not yet have a font requester. If you desparately need a
different sized font (say, for photo-reproduction), place the desired size in
the Courier directory of FONTS: and delete Courier/12, Courier/13 and
Courier/14. Then run fixfonts (in the Sys:system directory). Multiplot already
has the hooks to handle different font sizes.
Note: for an obscure reason, the OS likes to serve Courier 12/13 when /14 is
requested. It is worthwhile deleting these from your Courier directory (unless
you want smaller text, of course!).
TROUBLE SHOOTING
Problem: I am not American, and when I print, Multiplot tries to write
on a page that is wider than the paper I use.
Solution: Neither am I, and it does work! Ensure that the page width in
the preferences program is set to "Narrow Tractor" and that
you have not altered the PLT: startup flags in the
devs:mountlist file to indicate a larger page size. If necessary,
the page size can be set in absolute terms in preferences.
Problem: Sometimes when I run Multiplot, it doesn't seem to be able to
find its palette file or the conversion utilities, even though
they are right in its own directory.
Solution: Multiplot remembers where these files are by their full path
specification. If another disk or device exists with the same
name as the disk Multiplot resides on, it may not be able to
find the files. The commonest problem results from naming the
Multiplot disk "Empty" or a data disk "Multiplot".
Problem: When I try to print a plot, PLT can't find the file
pltfontnames.
Solution: Pltfontnames must reside in a device called PLTDATA:. This is
best done by assigning PLTDATA: to the directory in which
pltfontnames is kept.
CHANGES SINCE LAST BETA
=======> IMPORTANT FORMAT CHANGE FOR BETA USERS <=======
Bug fix: It was possible to create a data file with Multiplot that could
not be reread. The fix involved a change in the *?AXISDAT* keyword.
Currently, files produced by XLNd<beta> versions are still supported. This
will not continue to be the case. Please open all data files created by
Multiplot XLNd<beta> and resave
----
Bug fix: The left axis width on HPGL output was calculated incorrectly if
the values had been edited.
Bug fix: The plot was not rescaled after adding a title.
Bug fix: If an attempt to write a postscript file failed, the temporary file
was not deleted.
Bug fix: The postscript output in Portrait mode has been fixed.
Bug fix: An attempt to clip a large data set would corrupt memory due to
insufficient memory requested to hold the clip.
Bug fix: Setting print dimensions to 10% no longer divides by 0.
Bug fix: Smoothing an unsorted data set no longer results in a
permanent Zzz balloon.
Bug fix: Smoothing without selecting a data set no longer results in 2
error messages.
Bug fix: The normal handling of the Return/Enter keys has been added to
the file and palette requesters.
Bug fix: Estimation of non-standard Courier font dimensions has been
fixed.
New feature: The Enter key is now supported. It has the same functions
as the Return key.
Style Change: Hitting return from within a text box no longer exits the
whole window. Instead the text box is unselected. A subsequent return or
enter will exit the window.
Style Change: Screen coordinates are now stored as int's instead of
SHORT's. This prevents the extraneous lines produced when a value
overflowed (occurred with large zooms), but runs slightly slower. It
saved 2K. No idea how.
Style Change: The encapsulated postscript output now has the default
postscript .eps instead of .ps, to avoid confusion with postscript files of
the same data.
CHANGES SINCE XLNc
NOTE: Multiplot is now Workbench 2.0 compatible. This required an
alteration in the PLT-handler which is a modification of the handler
distributed in PLT 1.3b.
Bug fix: The great one would visit if Multiplot was started with no data
file and then the left mouse button was clicked any where on the screen
without first pasting data.
Bug fix: An error in the event loop has been corrected, resulting in
improved responsiveness.
Bug fix: The ILBM saves included cross-hairs.
Bug fix: The plot would not be redrawn if the Edit Text window was
closed by hitting the return key.
Bug fix: The first attempt to paste with an empty clipboard would result
in an "insufficient memory" error instead of a "nothing to paste" error.
Bug fix: The dynamic allocation of memory for pastes is now bullet proof
(I hope :-).
Bug fix: The point size range listed in the How to Plot window is now
correctly referred to as 0-20.
Bug fix: The tf_Accessors count for the default font is now correctly
handled.
Bug fix: Multiple accesses of the same font are now made to the same
font structure in memory instead of copying it to a new location.
Bug fix: Extra Text was offset 1/2 character down and 1 character to the
right of the correct location in HP-GL output.
Bug fix: The error message generated by attempting to save an HPGL file
to a disk and whipping the disk out of the drive at the last moment has
been corrected.
Bug fix: A compiler dependent bug in the way strings were accessed has
been corrected.
Bug fix: The aspect ratio of plots exported to CAD programs was
inconsistent.
Bug fix: No data was plotted in the HPGL output if one or both axes
were reversed.
New feature: A new file requester is now used which offers greater
utility for the same space.
New feature: A Print Setup menu option has been added to allow
orientation, position and scale of the printed graph to be set
interactively from within Multiplot.
New feature: A print spool has been added, so that a graph may be
printed while further work is done within Multiplot, or the program may
be quit without interrupting the print.
New feature: A print preview has been added.
New feature: It is now possible to move, delete or edit a data point. A
data point may be selected in SELECT mode by holding down the Ctrl
key and clicking the left mouse button near the point. Data points may
be group selected (Shift-Ctrl-LMB), or edited by double clicking.
New feature: Asymmetric error bars are supported. Single direction error
bars can be defined in the data file or created interactively from within
Multiplot.
New feature: Multiple objects of different types can now be group
selected. For example, data points and legends can be group selected and
dragged together.
New feature: The EDIT/Undelete feature when used to undelete a deleted
legend will now recreate the link between data set and text.
New feature: It is now possible to edit, move and delete axis values.
New feature: The routines for finding selected text have been optimised
to allow the inclusion of much greater numbers of text objects with
relatively little slow down in response time.
New feature: Linear data fits now compensate for log axes making
exponential, log and log/log fits available.
New feature: Open B-Splines have been added as a method of data
smoothing.
New feature: Polynomial line fits from 1st to 5th order have been added.
New feature: The recalculation of screen locations for data is now only
performed if some change to the scaling of the relevant axis has been
made. This results in faster screen refreshes.
New feature: A curve reader has been added. The coordinates of any
point can be obtained by holding down the Alt key and clicking the left
mouse button with the pointer or cross hairs over the point of interest.
New feature: Postscript output is now supported.
New feature: Encapsulated postscript output is now supported.
New feature: The HP-GL output has been upgraded to HP-GL/2 and
includes imbedded PCL commands to directly support the HP LaserJet III.
New feature: Minor tics can be included on the axes.
New feature: Logarithmic axes are now supported.
Style Change: The FUNCTIONS/Smooth data set menu option now has two
subitems: Filter which calculates running means of points over a
designated window; and Interpolate which adds intermediate points
utilising modified b-splines.
Style Change: The menu option FUNCTIONS/exponential fit has been
removed. the same function is available by selecting FUNCTIONS/linear
fit when the X axis is linear and the Y axis logarithmic.
Style Change: Axis and formulae values are now a fixed number of
significant figures rather than the idiosyncratic system used previously.
Style Change: The maximum axis value and its tic are now drawn.
Style Change: A box is no longer drawn around the legends in a graph
with box axes and a right margin.
Style Change: Low memory error handling has been improved.
Style Change: The CUSTOM PLOT window has been redesigned to make
selections easier, improve appearance on 1 bit plane screens, and use less
chip RAM.
Style Change: A clearer, larger font is used for all screen text. This
makes the reading of menus a great deal easier. I recommend the
inclusion of Topaz.11 in the WB1.3 Fonts: directory. Note that this is
unnecessary with WB2.0 because Topaz.11 is in ROM.
Other changes: The *AUTOSCRIPT* format has been changed to
accommodate the extra information required for new features. The new
format is backwards compatible with the old version with the exception
of tic number which will not be read from a Multiplot XLNc file.
THE FUTURE
Probable enhancements to come are: font requester, category axes,
multiple axes and bar graphs.
Suggestions welcomed.
BETA TESTERS WANTED
If you would like to see the latest version of Multiplot, why not
volunteer as a beta tester or ask for the latest version? Send a self
addressed envelope and disk to the address below. US residents may send $10
US instead (Note: this is not a shareware contribution, but covers disk and
mailing costs).
CONCLUSION
Multiplot was the first intuitive Data plotting program for the Amiga. It
has since been joined by a number of other programs which enable the
display of experimental data but is unrivalled for ease of use, stability and
flexibility. It allows extremely rapid visualisation of experimental data with a
wide selection of output formats. It does a simple job, but does it well. If
you have suggestions, questions, bug finds, please write:
Prior to June 1991:
Dr Alan G Baxter,
Walter & Eliza Hall Institute,
c/o Post Office,
Royal Melbourne Hospital,
Parkville 3053,
AUSTRALIA
WEHI::Baxter_A Baxter_A@wehi.dn.mu.oz.au
Baxter_A@wehi.dn.mu.oz.au@MUNNARI.OZ.AU
wehi.dn.mu.oz!BAXTER_A@harvard.edu
Ph (03) 380 9206
From July 1991:
Dr Alan G Baxter,
Harvard Medical School,
Massachusetts General Hospital,
MGH East,
Bldg. 149, 8th Floor,
13th Street,
Charlestown, MA 02129
Thanks to:
Tim Mooney for the great code.
Graeme Riddle and Jens Hohmann for testing.
Peter Leviton for help with the maths.
Rich Campeaux and Jim Miller for suggestions and the PLT: device.
Peter Cherna for fixing the event loop.
Peter da Silva for the Standard File Requestor.
RJ Mical for the palette requester.
Barney Kaufman via Steven Owen for the polynomial fitting.
I--------------------------------------------------------------------------I
I I
I This release of Multiplot XLN is to mark the occasion I
I of the marriage of I
I I
I Alan George Baxter I
I I
I and I
I I
I Susan Margaret Munro I
I I
I I
I at St John's Uniting Church, Essendon, Victoria, Australia I
I on March 3rd 1991. I
I I
I--------------------------------------------------------------------------I