#d preface
#d -1 -1
#d 0 0
#d 1 1
#d 2 2
#d 3 3
#d 4 4
#d 5 5
#d 6 6
#d 7 7
#d 8 8
#d 9 9
#d NULL NULL
#d documentstyle article
#%}}}
#d module#1 \tt{$1}
#d file#1 \tt{$1}
#d slang \url{http://www.jedsoft.org/slang/}{S-lang}
#d slang-documentation \
\url{http://www.s-lang.org/doc/html/slang.html}{S-Lang documentation}
#d grace_root_url http://plasma-gate.weizmann.ac.il/Grace
#d grace_url \grace_root_url/
#d grace \url{\grace_url}{Grace}
#d graceguide \url{\grace_root_url/doc/UsersGuide.html}{Grace User's Guide}
#d gracemodule-root http://www.jedsoft.org/slang/modules/grace
#d href#1 \url{$1}
#d jed \url{http://www.jedsoft.org/jed/}{jed}
#d slsh \url{http://www.jedsoft.org/slang/slsh.html}{slsh}
#d slrn \url{http://www.slrn.org/jed/}{slrn}
\linuxdoc
\begin{\documentstyle}
\title S-Lang Grace Module Reference
\author John E. Davis, \tt{jed@jedsoft.org}
\date \__today__
#i local.tm
\toc
\chapter{Overview}
\grace (formerly Xmgr) is a popular plotting program for Unix that
features a GUI for WYSIWYG generation of publication quality 2-D
graphs. The \module{grace-module} provides a high-level interface
between the \slang interpreter and the \grace plotting application,
permitting the creation of multiple \grace instances and allowing an
arbitrary number of \grace windows to be open.
The module was developed and tested with Grace-5.1.20, using Debian
``Etch'' as the underlying OS. As the module makes extensive use of
qualifiers, it will not work for versions of \slang prior to 2.1. It
is also unlikely to work with newer development versions of Grace
(grace-6) because the mechanism used for communicating with Grace-5 appears
to be unsupported in Grace-6. The module interacts with \grace via a
one-way pipe that feeds it commands using the approach recommended in
the \graceguide. As this pipe is one-way, it is impossible for the
module to query \grace about its plotting state. For this reason, the
module tries to maintain enough state to avoid potential conflicts
with Grace. For example, the module will not instruct Grace to switch
to a log scale without first making sure that no negative values have
been plotted. If negative values were plotted, the module will first
change the world-coordinate system to values that are appropriate for
log plots.
The development for this release has been focused towards the types
of 2-D graphs that are common in the physical sciences--- specifically,
Cartesian (X,Y) plots with various combinations of error-bars. While
the module can be used to produce pie and bar charts, no work has been
done to facilitate the construction of such graphs. A future version
of the module will address these shortcomings.
\chapter{Tutorial}
A tutorial is available online from
\href{\gracemodule-root/tutorial.html}. It will not be repeated here.
\chapter{Grace Module Function Reference}
#i gracefuns.tm
\end{\documentstyle}