Xmgr FAQ
[Version 1.05, 02 JUN 97]
This document contains the answers to some Frequently Asked Questions (FAQ)
often seen on the xmgr mailing list.
This article is located at:
http://plasma-gate.weizmann.ac.il/Xmgr/doc/FAQ.html
The FAQ is maintained by Evgeny Stambulchik
(fnevgeny@plasma-gate.weizmann.ac.il)
Send updates and corrections to me at that email address. It would help if
the subject line contained the phrase "For Xmgr FAQ".
Thanks to all who have contributed to this FAQ.
================================
This article includes answers to the questions listed below. Key:
+ questions NEW to this issue;
* CHANGES since last issue.
0) How do I subscribe to/unsibscribe from the xmgr mailing list?
1)* What is the most recent version of xmgr and where do I get it?
2)* I've found a bug in xmgr, how do I report it?
3a) When I try to compile xmgr I get message like:
Makefile: Must be a separator on line 55
3b) While compiling xmgr I get error messages about
missing include files?
4) How are math operations done between sets?
5) How do I set the background color of a plot, outside of the graph frame?
6) I run xmgr and get the following error messages:
Warning: translation table syntax error: Unknown keysym name: osfPageLeft
Warning: ... found while parsing '<Key>osfPageLeft:SWLeftPage()'
[...]
7a) What happened to the Alternate axis?
7b) I'd like plot data against an axis on the right (top) and another
data set against an axis on the left (bottom)?
8) Can I use different fonts, symbols, font size, or sub/superscript in Xmgr?
9) How can I input yy-mm-dd hh:mm:ss data?
10) How do I get the Angstrom symbol to show up in labels, titles, text?
11) Will xmgr do 3d plots, animation and/or contouring?
12) Where is the non-linear curve fitting module in 3.0x and 4.0x?
13) Where is grbatch? How does batch printing work?
14)* I can't anymore print to a PostScript printer. Prior to
xmgr-4.00, this worked fine.
15)+ I get all kinds of weirdness with 4.00 pl2 and up on Linux. I'm using
a precompiled binary.
16)+ How do I do polar plots with XMGR?
17)+ When I load to the xmgr-4.00 pl4 a project saved with an
earlier version of xmgr, symbols of all (some) sets are drawn in the black
color.
------------------------------------------------------------------
0) How do I subscribe to/unsibscribe from the xmgr mailing list?
Please, do not send requests to unsubscribe to the mailing list,
there are over 350 people on the list and everyone of them will
need to process your message, if you are having problems with your
subscription, send mail to me directly.
To subscribe to the mailinglist, simply send a message with the word "subscribe"
in the body of the message and empty Subject: field to the -request address of
the list.
As in: To: acegr-request@plasma-gate.weizmann.ac.il
Subject:
subscribe
To unsubscribe from the mailinglist, simply send a message with the word (you
guessed it :-) "unsubscribe" in the body of the message and empty Subject: field
to the -request address of that list.
As in: To: acegr-request@plasma-gate.weizmann.ac.il
Subject:
unsubscribe
In the event of an address change, it would probably be the wisest to first
send an unsubscribe for the old address (this can be done from the new
address), and then a new subscribe to the new address (the order is important).
Most (un)subscription requests are processed automatically without human
intervention.
Do not send multiple (un)subscription or info requests in one mail. Only one
will be processed per mail.
NOTE: The -request server usually does quite a good job in discriminating
between (un)subscribe requests and messages intended for the maintainer.
If you'd like to make sure a human reads your message, make it look
like a reply (i.e. the first word in the Subject: field should be "Re:",
without the quotes of course); the -request server does not react to
replies.
Use the address acegr@plasma-gate.weizmann.ac.il to send mail to the list.
The xmgr mailing list is unmoderated, meaning that mail sent
to the list is automatically forwarded to all subscribers.
------------------------------------------------------------------
1) What is the most recent version of xmgr and where do I get it?
The most recent version of xmgr is 4.00 (Beta) patchlevel 4 and is
located at the URL:
ftp://plasma-gate.weizmann.ac.il/pub/xmgr4/src/xmgr-4.00beta.pl4.tar.gz
You can fetch it from a mirror site as well. The list of mirror sites can
be found at
ftp://plasma-gate.weizmann.ac.il/pub/xmgr4/MIRRORS
------------------------------------------------------------------
2) I've found a bug in xmgr, how do I report it?
Please use the on-line report facility found under "Help/Comments" menu.
------------------------------------------------------------------
3a) When I try to compile xmgr I get message like:
Makefile: Must be a separator on line 55
This message means you have to use a more descent `make' utility.
An excellent choice would be the GNU make, available on many systems
as `gmake'. It can be downloaded from a GNU mirror all over the world.
------------------------------------------------------------------
3b) While compiling xmgr I get error messages about missing
include files.
The answer to this question varies:
a. The include files are there but in a non-standard place. Check with your
local sys admin.
b. If the missing files are like Xm/*.h, this means you don't have Motif
development kit installed (or again, you have to tell explicitly to
compiler where to look for the header files). This mostly concerns
Linux.
c. If compiler complains about missing Xbae/Matrix.h, you need either to
install the Xbae widget library version 4.5 (available from
ftp://ftp.x.org/contrib/widgets/motif/) or disable the use of the widget
in Make.conf file. In the later case, however, you won't get the
semi-spreadsheet set editor.
------------------------------------------------------------------
4) How are math operations done between sets?
When using Edit/Transformations/Evaluate expression, it is important to
keep in mind that x and y refer to the set selected in the choice item of
this popup. If you set a=y and don't change the set number, then b=y will
load to a and b the same y (in this case, y from set 0). Computing y=a-b
will get you a vector of zeros. The proper sequence of events is:
1. Copy s0 to s2 using Edit/Set ops/Copy set.
2. Using Edit/Transformations/Evaluate expression with the set 0
selected, perform a=y.
3. Select set 1.
4. Perform b=y.
5. Select set 2.
6. Perform y=b-a.
7. Done.
This popup is a holdover from a long time ago (with 4.00 given the new
way of selecting sets, it will become more useful). I'd use the
File/Commands popup and explicitly give the set number as follows:
copy s0 to s2
s2.y = s1.y - s0.y
Now, s2 will have the difference. It is important to note that the
lengths of s0 and s1 must be the same.
Another example follows, save to a file and use File/Commands/Read:
# Demo of operations between sets
#
# Open File/Commands and Read this file, then
# click on Replay.
#
# activate s0, s1 and set their lengths
#
activate s0 1024
activate s1 1024
#
# load the index (1, 2, ..., 1024) of each point to x
#
s0.x = index
s1.x = index
#
# Stuff something into y of both sets
#
s0.y = 2*cos(2*pi*x/100) + 5 * sin(2*pi*x/35)
s1.y = 3*cos(2*pi*x/100) + 7 * sin(2*pi*x/35)
#
# Let's save s0 to s2
#
copy s0 to s2
#
# Compute the difference
#
s0.y = s0.y - s1.y
#
# Autoscale on the difference
#
autoscale s0
#
# pause a bit
#
sleep 5
#
# let's look at all of the active sets
#
autoscale
------------------------------------------------------------------
5) How do I set the background color of a plot, outside of the graph frame?
Use graph 0 as the background:
1. set the viewport for graph 0 such that 0 < x < 1 and 0 < y < 1
2. fill the frame of graph 0 with whatever color you want
3. graphs 1 and up will plot in front of graph 0, so the desired
effect is achieved.
------------------------------------------------------------------
6) I run xmgr and get the following error messages:
xmgr (xmgr) v3.01pl3
(C) Copyright 1991-1994 Paul J Turner
All Rights Reserved
Warning: translation table syntax error: Unknown keysym name: osfPageLeft
Warning: ... found while parsing '<Key>osfPageLeft:SWLeftPage()'
[...]
Get the XKeySymDB file from the X11R6 distribution. Put it somewhere
where you can get at it and
setenv XKEYSYMDB /place/where/you/put/XKeysymDB
This will satisfy xmgr. It seems that a lot of the motif KeySym names
are missing from the XKeySymDB that comes with SunOS
(/usr/openwin/lib/XKeySymDB). The X11R6 one lives in
lib/X11/XKeySymDB.
and...
The file XKeySymDB, which is found in /usr/openwin/lib on Sun
Workstations and possibly in /usr/X11/lib on others does not have all
the Motif XKeySyms defined. Get the XKeySymDB file from the X11R5 or
X11R6 distribution, put it somewhere convenient and "setenv XKEYSYMDB
/path/where/you/put/XKeySymDB". (Perhaps this file could be distributed
with future versions of xmgr?)
------------------------------------------------------------------
7a) What happened to the Alternate axis, it was in 2.10, but missing
in 3.0x?
7b) I'd like plot data against an axis on the right (top) and another
data set in a different scale against an axis on the left (bottom)?
The alternate axis made for complications in the axis drawing routines
that made that section of code too difficult to maintain - I dropped it
in favor of overlaying graphs. With this you can achieve the same effect,
but you'll need to pay close attention to which graph is the 'current'
graph. There is a selection in the Graph ops toolbox that should make it
easier to set up the 2 graphs. This is also how to plot data sets
in different scales against an axis on the right an an axis on the left.
------------------------------------------------------------------
8) Can I use different fonts, symbols, font size, or sub/superscript in Xmgr?
Yes, Xmgr has all these features. Wherever you can type a text in xmgr,
e.g. Axis labels, graph title, text from Strings&Things, etc., you can use
all those features within the same text.
Here is how, the following is quoted from the online help provided with
Xmgr v3.0 and higher.
Changing fonts within a string
To change fonts within a string precede the font number listed below by a
backslash. To turn subscripting or superscripting on or off use \s for
subscripts and \S for superscripting. Font selection is current for the
remainder of the string or until the next font change. Subscripts and
superscripts remain for the remainder of the string or until \N is seen. To
print a backslash use \\. To backspace use \b. To begin underlining
use \u, to stop underlining use \U. \+ increases the size of the
characters and \- decreases the size of the characters.
xmgr uses the Hershey fonts to draw text on the screen, but PostScript
fonts for hardcopy. There are discrepancies between the two sets of fonts
and of this writing, there are problems with the mapping of Greek and
special characters.
Font # Font
0 .... Complex Roman on screen, maps to Times-Roman.
1 .... Triplex Roman on screen, maps to Times-Bold.
2 .... Complex Italic on screen, maps to Times-Italic.
3 .... Triplex Italic on screen, maps to Times-BoldItalic.
4 .... Simplex on screen, maps to Helvetica.
5 .... Duplex on screen, maps to Helvetica-Bold
6 .... Complex Italic on screen, maps to Helvetica-Oblique.
7 .... Triplex Italic on screen, maps to Helvetica-BoldOblique.
8 .... Simplex Greek on screen, maps to the lower 128 characters of the
Symbol font.
9 .... Symbols on screen, maps to the upper 128 characters of the
Symbol font.
x .... Special symbols
Summary of other special commands
+ .... increase size
- .... decrease size
b .... backspace length of previous character
s .... begin subscripting
S .... begin superscripting
u .... begin underline
U .... stop underline
N .... return to normal
c .... switch to upper 128 symbols
C .... return to lower 128 symbols
Example2:
1- Using font 0 and e prints as epsilon from the Simplex Greek font, i.e
the expression
\0F\sX\N(\8e\0) = sin(\8e\0)*e\S(-X)\N*cos(\8e\0)
prints roughly (in TeX/LaTeX language )
F_X(\epsilon) = \sin(\epsilon)*e^{(-X)}*\cos(\epsilon)
2- To increase (decrease) the font size use use \+ ( \- ) special commands.
The expression
\8p\0\S\+-\N
prints (in TeX language)
\pi^{-}
with increasing the size of the minus sign.
NOTE: Special characters are mapped to the keyboard, the present mapping is
not very well organized and may change.
------------------------------------------------------------------
9) How can I input yy-mm-dd hh:mm:ss data?
Before reading the file, toss in a:
@format YYMMDD
# then
YY-MM-DD y
@format YYMMDDHMS
# then
YY-MM-DD HH:MM:SS.S y
@format MMDDYY
# then
MM-DD-YY y
@format MMDDYYHMS
# then
MM-DD-YY HH:MM:SS.S y
There is no support for writing time/date formats.
------------------------------------------------------------------
10) How do I get the Angstrom symbol to show up in labels, titles, text?
ISO Latin encodings were added to the PostScript driver by Przemek
Klosowski (przemek@rrdbartok.nist.gov). You can now print the Angstrom
symbol. There is no onscreen display of the extended characters (something
will show, but it won't be right). 4.00 will use the xvertext routines
so that it will be a bit more WYSIWYG. Use \c to go into the upper
128 characters and \C to return to normal. \cE\C is the Angstrom symbol.
------------------------------------------------------------------
11) Will xmgr do 3d plots, animation and/or contouring?
I really want to add 3D. However, I'm afraid to mention a concrete date.
Iff my work goes smoothly, expect it to appear in the summer. But please
don't catch me at my word.
------------------------------------------------------------------
12) Where is the non-linear curve fitting module in 3.0x and 4.0x?
If you don't see the non-linear fit option in the "Transformation" menu,
you're using a pre-4.00.pl3 version of xmgr.
The non-linear curve fitting routines are still there but were intentionally
hidden because of low reliability. You can get them by executing
xmgr -nonl
Be very, very careful about the results, or better upgrade to pl3 or higher.
------------------------------------------------------------------
13) Where is grbatch? How does batch printing work?
Grbatch is simply a copy of xmgr named grbatch or a symbolic link from
xmgr (xvgr) to grbatch. In the case of the symbolic link:
ln -s xmgr grbatch
done wherever the xmgr binary is located will do the trick (rehash
or logout and login to make sure that grbatch shows up in your path).
Executing grbatch with no command line parameters or data files will produce
a hardcopy on the default printer.
------------------------------------------------------------------
14) I can't anymore print to a PostScript printer. Prior to
xmgr-4.00, this worked fine.
The changes in the PostScript driver for fills using patterns, introduced in
4.00, require use of a Level 2 compliant PostScript printer. In pl2 and higher,
you can disable the PS Level 2 features in the printer setup as well as with the
command-line switch `-nops2' (pl4 and up).
------------------------------------------------------------------
15) I get all kinds of weirdness with 4.00 pl2 and up on Linux.
I'm using a precompiled binary.
The problem is in the libc incompatibility. The README.Linux file, found in the
same directory you downloaded the binary from, lists the proper library version.
You'll have to either upgrade your system or use the static binary (available
since pl4).
------------------------------------------------------------------
16) How do I do polar plots with XMGR?
The support for polar plots is very limited as of now (4.00pl4), though the
situation may change soon. The polar coordinates can be selected from the
"Data/Graph ops/Type".
------------------------------------------------------------------
17) When I load to the xmgr-4.00 pl4 a project saved with an
earlier version of xmgr, symbols of all (some) sets are drawn in the black
color.
The xmgr-4.00 pl4 fixed the relict symbol-color bug. Previously (since xmgr-3)
all symbols by default were asigned the black color, but drawn using the line
color. The fix thus would break any project saved with a post-2 version of
xmgr, unless symbol colors were explicitly defined. To overcome this, the new
`-symcolorbug' flag should be used to load such a project. Once saved, it can
be open in a usual way. Projects saved with a 2.* version of x[m,v]gr (which
didn't have the option to change the symbol color independently) will be
converted automatically.
------------------------------------------------------------------