XLOGGRAPH (CCP4: Supported Program)


xloggraph - X-windows tool, a viewer of specially formatted `log' files.


xloggraph logfilename


xloggraph belongs to the XCCPJiffy class of simple X11 graphic based programs. xloggraph reads specially formatted log file produced by some of the CCP4 programs, recognises tables and graphs described in it and produces their graphic representation.
NB: the loggraph program offers an alternative to xloggraph.

xloggraph uses an X-window device and has an option to create a PostScript file.

Running the program xloggraph creates a Header window with boxes showing:

to exit the program
box containing current log file name
Show Table List
Clicking here returns to complete list of Tables in the file. This box is sensitive only if the index to Graphs is displayed.
View File
Allows one to scroll through the log file (Try CTRL/S when the pointer is in text window)
Select from Tables
Select from Graphs
A list of the Tables/Graphs stored within the log file. Clicking on the particular Table name will create an index of the Graphs available from that particular table Clicking on the particular Graph name will generate a Graph in an X-window.
Quit - in that window closes the window
Plot - creates a PostScript version. (If you want a file goto the Control Panel first.)
Control Panel
Clicking Left Mouse button here allows one to Toggle between Portrait and Landscape for the output Postscript file conversion and the option to specify a Output File for the Postscript file. The print command is controlled by theXCCPJiffy*psPlotCommand resource. The Quit button exits the control panel.


Syntax of the Graph description in a log file

$TABLE :table name:
$GRAPHS :graph1 name:graphtype:column_list: :graph2 name:graphtype:column_list:
        :graph 3 ...: ... $$
column1_name column2_name ... $$ any_characters $$ numbers $$
table name, graphN name
are arbitrary strings (without newline)
are arbitrary strings without tab, space, newline
for fully automatic scaling (e.g. ... :A:1,2,4,5:)
for automatic y coordinate scaling, where y lowest limit is 0 (e.g. ... :N:1,2,4,5:)
for user defined scaling where XMIN ... are axis limits (e.g. ... :0|100x-1|1:1,2,4,5:)
are treated as a comment. They can be eventually used as a human oriented table header
represents the table itself. (See parsing algorithm below)

Parsing algorithm for the table

Table values (numbers) are read in free format. This implies, that they MUST be separated by space(s) and/or tab(s) and/or newline(s). Parsing is performed on a logical line basis, where a logical line begins with a newline, followed by a number of values corresponding to the number of table columns, an optional comment (any characters) up to the next newline delimiter. The term `logical' is used, because this 'logical' line can consist of several `physical' lines, where newlines between values are treated as ordinary delimiters.

Syntax of the Text description in log file

$TEXT :text name: $$ junk (ignored) text $$any text characters$$

Syntax of the Key Text description in log file

$KEYTEXT :text name: $$any text characters$$keyword_with_values$$
  any_characters        - are the descriptive text
  keyword_with_values   - is a keyworded format of data

Synatx of Summary description

$SUMMARY :summary_name: $$ any characters $$
     :component_type:component_name: :component_type:component_name: ...$$
  component_type        - is `TEXT` either `KEYTEXT`
  component_name        - is it's name
Due to the single-pass parsing all TEXTs and KEYTEXTs must be defined BEFORE the SUMMARY.

NOTE ON COLOURS AND LINE STYLES - For Users and Programmers

xloggraph works in pen graphic mode, each object is painted by a different virtual pen. By definition, xloggraph uses pen1 for for Graph axes and texts, pen2 for 1st graph, pen3 for the second etc. Currently 10 pens are available.

Colour, Line width and Postscript properties of virtual pens are controlled via the entries in X-resource database (see X manual). It is recommended to load X-resources into the X-server database (xrdb). Once the database is loaded, one can optimise it using xrdb to load/merge a personalised set of X-Application Resources.

X pen is controlled by:

XCCPJiffy.graph*draw2d.background:              white
XCCPJiffy.graph*draw2d.pen1Color:               black
XCCPJiffy.graph*draw2d.pen1LineWidth:           1
XCCPJiffy.graph*draw2d.pen10Color:              indigo
XCCPJiffy.graph*draw2d.pen10LineWidth:          1

Postscript pen by:

XCCPJiffy*psPen1Attr:   1 setlinejoin 0.5 setlinewidth [] 0 setdash
XCCPJiffy*psPen10Attr:  1 setlinejoin 0.9 setlinewidth [8 2] 0 setdash

To check your current setting use for instance
xrdb -query | grep XCCPJiffy | more


loggraph, X (1), xccpjiffy2idraw (1), xrdb (1)


DISPLAY to figure out which display to use.


Jan Zelinka - York University