XYPLOT Revisions
- 04-22-2005 Linux version 2.1.2
- Two new functions are implemented to expand xyplot
user-interface programming from within the kForth
environment:
- The word
FILE_OPEN_DIALOG
will bring up a standard
file open dialog. Forth modules which read custom
files can now have a GUI interface for file selection.
See xyplot.4th for specifications for
FILE_OPEN_DIALOG
.
- The word
MAKE_MENU
allows the user to create a custom
menu on xyplot's menu bar. Users writing Forth modules
can put their menu items into their own separate menus
rather than having to use one of xyplot's existing menus.
See xyplot.4th for specifications for MAKE_MENU
.
- The file grace.4th has been revised to allow Grace .agr files
to be read into xyplot. Previously, the xyplot graph data could
only be exported to .agr files. The new capability provides
a way to save and retrieve the entire graph specs to/from a
file, which is also readable by Grace. The revised grace.4th
also illustrates the use of
FILE_OPEN_DIALOG
.
- New animation examples, anim2.4th and anim3.4th, have been
added, and anim1.4th has been revised.
- A backport of version 2.1.2 for gcc 2.x systems is also available.
- 01-15-2005 Linux version 2.0.3
- This version now builds correctly with GNU g++ 3.2 and 3.3.
Older versions will not compile properly under these
newer g++ versions due to enforcement of new C++ standards
with regards to namespace scope resolution for container
classes and strict limits on Standard Template Library
iterator usage.
- The source distribution file (.tar.gz) now unpacks into a
new subdirectory called xyplot-VERSION, where
VERSION is a macro defined in the
Makefile,
e.g. VERSION=2.0.3. Previous
distribution files unpacked their contents into the current
directory.
- The Makefile has been updated to automate the version number
handling for creating archive and insertion of version numbers
into XYPLOT's About Box. It has also been updated with the
-m32 flag to allow XYPLOT to build as a 32-bit
application on 64-bit Linux systems.
- The built-in kForth version has been updated to the bleeding
edge development version of kForth, version 1.2.10. This
version of kForth features an interface to Linux signals, and
should make it possible for user's to write Forth modules which can
start periodic background tasks, e.g. pseudo real-time
display of data from an instrument at periodic intervals.
For details on kForth, see the
kForth Page.
- Several new Forth modules have been added to the distribution.
In addition, the DatasetInfo and PlotInfo structures,
defined in
xyplot.4th, have changed. These structures are now
defined with the more widely used Forth structures code,
struct.4th. Although this breaks compatibility with previous
xyplot Forth modules, this change was deemed to be highly desirable
for standardization. Forth modules using the older structures may be
updated with minimal changes, and all of the modules in this distribution
have been updated. User's with problems updating older modules
may write to krishna.myneni@ccreweb.org for assistance in
updating their modules.
- Fixed a bug which prevented large datasets from being
created with the Forth interface word make_ds.
- 08-23-2003 Windows version 1.1.3
- The core xyplot for Windows code (non user interface code)
was updated to match almost exactly the Linux xyplot code.
A number of bug fixes and enhancements (dataset handling,
plotting, etc.) which had been performed on the Linux version
since 1998 are now included in xyplot for Windows.
- The latest version of kForth, ver 1.0.14-2, was ported to the
SC++ 7.5 compiler and integrated into xyplot. The interface
between the xyplot code and the kForth interpreter to permit
running Forth modules and add new menu items was largely
taken from the Linux version and integrated into the Windows
code.
- Add-on modules were tested under the new Windows version.
- The integer save option from the Save Options dialog
was fixed.
- Made All Files the default filter for the
Open File dialog.
- Source code for this version has been made available to users.
While the development system used at present (Symantec C++ 7.5)
has been obsolete for quite some time, we expect to migrate the
project to a currently supported development environment soon.
- 06-14-2002 Linux version upgrade
- Built-in Forth environment was upgraded to
kForth
rls. 2-10-2002.
- Made the following fixes:
- For line plots, plot line segment in window even
when both end points are outside of the window.
- Fixed handling of datasets containing only two points.
- Fixed handling of datasets with unordered abscissas.
- Fixed problem with persistence of grid lines even
when the lines are turned off.
- For point plots, fixed problem of the endpoints not
being plotted.
- Added the following features:
- Bind the
G
key to grid lines on/off toggle function.
- Enabled the plotting symbols
BIG-POINT
and HISTOGRAM
- Added several existing Forth modules to the distribution
file, and one new module
lpf.4th, for low-pass filtering of data. Also updated
the utility Forth modules:
matrix.4th strings.4th files.4th
and
matfiles.4th
.
- 03-05-2001 Linux version change
- Minor code changes were made to allow compilation
with fewer warnings and to allow build under RedHat 7.0.
- 03-04-2001 Linux version upgrade
-
Lesstif version 0.92 is now the recommended version to use
with xyplot.
- Built-in kForth has been upgraded to the 8-8-2000 release of kForth.
- File menu item Save Options is now active. This item
allows headers to be suppressed or enabled when storing data files.
- Plot menu item Color is now active. A selection
dialog provides the user with a list of available colors.
There are more colors available now. This menu item is used
to set the color of the active plot.
- Plot menu item Symbol is now active. A selection
dialog allows the user to select a plotting symbol for the
active plot. Currently functioning symbols are
- Line
- Point
- Line+Point
- Stick
- Many messages are now displayed in the console window
instead of the status bar. This new feature allows
the user to see a history of significant actions such as
loading a file or operating on a data set.
- A plot list is displayed on the status bar as a
numerical list of plots. The active plot is indicated by
brackets and the operand plot is indicated by parentheses.
The user may click on a list item with the left mouse button
to select the active plot, and with the right button to select
the operand plot.
- Dialog box colors are improved with text input areas now
displayed in white.
- 04-15-2000 Linux version upgrade
- 01-19-1999 Linux version upgrade
This is the first release of xyplot for Linux/X Windows
which uses the LessTif toolkit. It has the following functions:
- Open open a dataset file
- New clear the workspace
- Save save the active dataset to a file
- Exit
- Header view and edit the header of the active data set
- Delete delete the active data set
- Duplicate duplicate the active data set
- Extrema set the window limits
- Drop drop the active plot
- Pick make plot of selected data set
- Expression math expression evaluation
- About info box
This version also has the following features:
- Zoom in/zoom out (multiple levels)
- Cursor coordinate display
- Key bindings for functions
- Multicolumn file support
- Allows comment lines that start with #
- Header is updated to record mods to a data set
- 09-30-1998 Windows version upgrade
- Command line filenames are processed. Multiple input
files may be specified.
- Supports arbitrarily large data files.
- 09-11-1995 XYPLOT for Linux/X-Windows
One of the first versions of XYPLOT for Linux with X-Windows,
this is a port of some of the QuickBasic XYPLOT code to C.
This is a minimal version of XYPLOT which provides a basic
set of functions for loading and plotting data in a separate
window, and makes use of intrinsic X-Windows library calls.
- 10-24-1993 XYPLOT ver 4.1 for DOS
- Bug Fixes:
- Starting xyplot with a command line filename
for a non-existent file used to cause the program
to go into an unbreakable loop. This has been
fixed.
- The directory display would skip one file at
each page boundary (when the display was longer
than one page) -- corrected.
- A stick plot in Log scale would cause a crash
in 4.0; ver 4.1 detects log scale when attempting
to use stick symbol and plots a line from the display
ymin to the point, instead of from y=0.
- Activating the data cursor when the mouse arrow
cursor is near the edge of the screen used to cause a
program crash. This has been fixed.
- The output format for numeric labels on the y-axis
was chosen incorrectly -- it would result in a format
overflow indicated by a "%" sign before the
labels in some cases. The output format is now
chosen to handle all cases correctly.
- The Alt+I key combination now works for selecting
the fit menu.
- Modifications:
- Loading a 3 column file now solicits the same prompt
as given for multi-column files:
FILE CONTAINS n COLUMNS ...
You may now load a REAL data set from a three column
file by specifying the x and y columns.
You may also specify a COMPLEX data set by specifying three
columns, or by simply pressing Enter at the prompt.
- You may press Enter at the prompt
Select the file >>
on the load screen. In ver 4.0, Enter was interpreted
to be the same as Esc. In ver 4.1, pressing Enter
prompts you to create a template. This allows you to create
a template upon starting xyplot without having to load a file.
- The highlighted item in menus will now wrap around
when you press the up and down arrow keys.
- Additions:
- You may now select the plot color of the active plot
by choosing the Color option on the plot menu or by
pressing C. A palette of colors will be displayed
at the top of the screen.
- A Sort function has been added to the math menu.
This will perform an ascending sort on x for the
active data set.
- A new rescale function has been added, the
polynomial rescale, pol. At the rescale prompt,
you may type an expression such as
pol y, a, b, c, d, e, ...
or
pol(y a b c d ...)
to apply a polynomial rescale of up to 9th order
on the x or y values. The values are
transformed according to
x' = a + b*x + c*x^2 + d*x^3 + ...
For example, to generate the function
y = x^5 + x + 1, you make a template, then use
polynomial rescale in the following way
pol y 1, 1, 0, 0, 0, 1
This function is not supported for complex data sets.
- You may now create a Lotus 1-2-3 WK1 file directly
from xyplot. A new item, Lotus WK1 has been added
to the save menu. This function will create a Lotus
worksheet file. There is one subtle difference between
this function and what the program xsp2wk1 does.
The xyplot menu function will write ONLY the data sets
corresponding to displayed plots in the plot list.
The program xsp2wk1 writes ALL of the data sets
in the database to the worksheet file regardless of
whether or not they appear as plots. It is easier to
correlate the plots in xyplot and the columns in the
worksheet file for the new menu function.
12-12-1992 XYPLOT ver 4.00 for DOS Beta Test, Release 3
- The ascii file reader has been modified. XYPLOT is now more
fault tolerant about data set files -- blank lines between
and after the data will be ignored. In previous versions,
blank lines would either be read as the point (0, 0) or cause
an unexpected end of file error. The file reader should also
be more insensitive to unprintable ascii characters that may be
present. Of course, all of this comes at the price of reducing
the speed with which it can load data set files -- I measure about a
20% reduction for large files. Workspace files will still load at
the same speed -- very fast!
- Headers are updated when POINT delete and insert functions
are used.
- The Key Help screen (F1) has been updated
to show the point editing functions.
- The annoying problem of not resetting window limits after a
New file has been loaded has been fixed.
- X and Y axis label formats have been adjusted
for better appearance. The Y axis labels, in particular,
should be more informative over a wider range of numbers.
7-31-1992 XYPLOT ver 4.00 for DOS Alpha Test
- XYPLOT initialization settings are performed with
statements in the initialization file (xyplot.ini).
A sample copy of the INI file is included. The new
version does not accept command line settings. Instead,
it uses the command line to allow a startup filename
to be specified (described further below). Settings
for the screen mode, plot colors, default plotting
symbol, file save options, and a few other things may
be included in this file. Type out the sample file.
- From the DOS prompt, type
XYPLOT [filename]
to start up the program. The filename argument is
optional. The file may be a workspace file (described
below) or the standard DAT file. If no extension is
specified, XYPLOT first checks for a file with
extension XSP (xyplot workspace), and then for a file
with extension DAT.
- XYPLOT now allows you to save the entire environment
to a file. This file is called a workspace file, and
it contains all of the data sets, plots, and plot
settings. Workspace files are in binary format --
they are particularly handy if you have a large number
of points, since they load much faster than an ASCII
data file. They are also handy for saving a group of
related files into one file. Workspace files must have
an extension of XSP.
Data files are the same as before, and any previous
data file is compatible -- from now on, I'm referring
to these files as data set files, since they contain
one set of data. You may still save data set files as
before, but with the powerful new feature of specifying
the output format. Choose Options from the Save Menu.
- The file loading/viewing front end is quite different
as you will immediately notice. The current directory
is displayed. Subdirectories will appear in a different
color than files. Use the mouse to load a file, view
a file, or change the directory. For file selection
with the mouse, the operation depends on which button is
pressed:
left button -- load the file
right button -- view the file
Of course, all operations may be performed with the
keyboard as well.
- The database may have up to ten data sets (which are
either loaded from files or created by operations in
XYPLOT). Just as in VaxPlot, there is a distinction
between plots and data sets (this was not true in
the previous version of XYPLOT). Several plots may
be made of the same data set, without the need of
having multiple copies of the set. Use the INCLUDE
function from the PLOT MENU to make a plot of any
data set in the database.
- Menus in the plot screen (File, Plot, Math) may be
accessed with the keyboard as well as the mouse. The
key sequence is Alt+first letter (e.g. Alt-F
for File Menu). You may also use the up and down arrows to
select an item from the menu or press the Esc key to
cancel the menu. Moving the mouse outside of the menu
cancels the menu.
- Press F1 from the plot screen for a list of keyboard
commands -- most are the same from the previous version,
but a few are different (especially, Alt-X for exiting
XYPLOT).
- Expansions are performed in the same way as in VaxPlot.
Move the cursor to one corner and hold down the left
button to draw an expansion box. Release the button, and
the expanded plot is drawn.
- Note that the mouse cursor changes from a crosshairs to
an arrow when it goes out of the plot window. Expansions
may be performed with the crosshair cursor using the left
button. If you press the right mouse button with the cursor
in the plot window, the cursor goes to the nearest point
(in X) for the active plot. Pressing the spacebar will
also accomplish this. This function allows the coordinates
of individual points to be read to at least 3 significant
figures.
- Complex data sets are implemented so that most functions
will work with them as well as with real sets. Currently,
the only exceptions are the JOIN function for concatenating
data sets, and some RESCALE functions
(LOG, L10, ATN, and
raising to a power). All other functions such as area,
derivative, polynomial fitting, smoothing, arithmetic,
work with complex sets on an equal basis. Menus are context
sensitive -- their options will depend on whether the active
plot is for a complex or real set. The Complex Menu has
a function for converting real data sets to complex data sets,
and vice versa.
- Rescale on a complex data set with a complex constant is
performed by specifying the complex constant with the
following notation: (a, b)
Examples:
Rescale>> y*(0, 1)
Rescale>> y-(5, 2)
Note that only Y is permitted to operate on a complex
constant. Complex constant arithmetic is not available
with real data sets, although arithmetic with a real
constant is allowed for a complex data set. There is
no real reason for this asymmetry, and the restriction
should probably be removed.
Note that the power operation is not implemented for
complex data sets (i.e. y^1.5 not allowed for complex
y).
- Just as in VaxPlot, two set operations require selecting
the active plot and the operand plot. The active
plot is now highlighted in the Plot List, and the
operand plot is surrounded by parentheses. Use the left mouse button
to select the active plot, and the right mouse button to
select the operand plot. From the keyboard, press the
number key for selecting the active plot, and Alt+number
for selecting the operand plot.
- Operations on data sets include:
- Viewing the header
- Deleting a data set from the database
- Making a Duplicate Copy of the data set
- Joining two data sets into one data set
- Truncating a data set
The Truncate function removes data falling in the domain
of the Plot Window for the active plot.
The Join function concatenates two sets and then performs
an ascending sort on X -- currently operates only on real
data sets.
- The FFT function works, but I'm not able to evaluate its
usefulness in its present form.
3-7-1990 XYPLOT ver 3.03 for DOS
- Graphics features:
- Graphics cursor
- Overlay multiple plots
- Line or point plotting
- Color plotting
- Logarithmic or linear display
- Multi-level expansions
- Data analysis features:
- Rescale data
- Three-point smoothing
- Polynomial fitting
- Plot arithmetic
- Miscellaneous features:
- Help menu
- Store processed data
©1998--2005 Creative Consulting for Research and Education