Chapter 4: Plotting Axis Systems and Titles

4.1 Plotting Axis Systems

An axis system defines an area on the page for plotting data. Various axis systems can be plotted to accommodate different applications. For two-dimensional graphics, a maximum of two parallel X- and Y-axes can be drawn. The axis system is scaled to fit the range of data points and can be labeled with values, names and ticks. Two-dimensional axis systems are plotted with a call to the routines GRAF or GRAFP.

G R A F

GRAF plots a two-dimensional axis system.

The call is: CALL GRAF (XA, XE, XOR, XSTP, YA, YE, YOR, YSTP) level 1
or: void graf (float xa, float xe, float xor, float xstp, float ya, float ye, float yor, float ystp);

XA, XE are the lower and upper limits of the X-axis.
XOR, XSTP are the first X-axis label and the step between labels.
YA, YE are the lower and upper limits of the Y-axis.
YOR, YSTP are the first Y-axis label and the step between labels.

Additional notes:

The following routine GRAFP can be used to plot a polar axis system and set up a scale for polar axes.

G R A F P

The routine GRAFP plots a two-dimensional polar axis system.

The call is: CALL GRAFP (XE, XOR, XSTP, YOR, YSTP) level 1
or: void grafp (float xe, float xort, float xstp, float yor, float ystp);

XE is upper limit of the X-axis (radius coordinate).
XOR, XSTP are the first X-axis label and the step between labels.
YOR, YSTP are the first Y-axis label and the step between labels specified in degrees. The Y-axis is scaled from 0 to 360 degrees.

Additional notes:

4.2 Termination of Axis Systems

E N D G R F

The routine ENDGRF terminates an axis system and sets the level back to 1.

The call is: CALL ENDGRF level 2, 3
or: void endgrf (void);

Additional note:

4.3 Plotting Titles

T I T L E

This routine plots a title over an axis system. The title may contain up to four lines of text designated with TITLIN.

The call is: CALL TITLE level 2, 3
or: void title (void);

Additional note:

4.4 Plotting Grid Lines

G R I D

The routine GRID overlays a grid on an axis system.

The call is: CALL GRID (IXGR, IYGR) level 2, 3
or: void grid (int ixgr, int iygr);

IXGR, IYGR are the numbers of grid lines between labels.

Additional note:

G R D P O L

The routine GRDPOL plots a polar grid.

The call is: CALL GRDPOL (IXGR, IYGR) level 2, 3
or: void grdpol (int ixgr, int iygr);

IXGR is the numbers of circles between labels.
IYGR is the numbers of sector lines between 360 degrees.

A X G I T

The routine AXGIT plots vertical and horizontal lines through X = 0 and Y = 0.

The call is: CALL AXGIT level 2, 3
or: void axgit (void);

Additional note:

C R O S S

The routine CROSS plots vertical and horizontal lines with additional ticks through X = 0 and Y = 0.

The call is: CALL CROSS level 2, 3
or: void cross (void);

Additional note:

4.5 Plotting Additional Labels

A D D L A B

Additional single labels can be plotted on an axis system with the routine ADDLAB.

The call is: CALL ADDLAB (CSTR, V, ITIC, CAX) level 2, 3
or: void addlab (const char *cstr, float v, int itic, const char *cax);

CSTR is a character string containing a label.
V is a user coordinate that defines the axis position of the label.
ITIC is an integer option that defines if a tick mark is plotted. ITIC = 0 means that no tick is plotted, ITIC = 1 defines a minor tick and ITICK = 2 defines a major tick.
CAX is a character string that defines the axis. CAX can have the values 'X', 'Y', 'Z', 'XTOP' and 'YRIGHT'.

4.6 Secondary Axes

The following routines plot single X- and Y-axes; they are called secondary axes because they do not define or change any of the axis scaling parameters. Secondary axes can be used to add additional labels to the axis systems.

The plotting routines for secondary axes are:

The call is: CALL XAXIS (A, B, OR, STEP, NL, CSTR, IT, NX, NY) level 1, 2, 3
or: void xaxis (float a, float b, float or, float step, int nl, const char *cstr, int it, int nx, int ny);

A, B are the lower and upper limits of the axis.
OR, STEP are the first label and the step between labels.
NL is the length of the axis in plot coordinates.
CSTR is a character string containing the axis name.
IT indicates how ticks, labels and the axis name are plotted. If IT = 0, they are plotted in a clockwise direction. If IT = 1, they are plotted in an counter-clockwise direction.
NX, NY are the plot coordinates of the axis start point. The X-axis will be plotted from left to right and the Y-axis from bottom to top.

Analogue: YAXIS, XAXLG, YAXLG

Additional notes:

4.7 Calculating Axis Parameters

G A X P A R

The routine GAXPAR calculates parameters for GRAF from a minimum and maximum of data values.

The call is: CALL GAXPAR (V1, V2, COPT, CAX, A, B, OR, STP, NDIG) level 1, 2, 3
or: void gaxpar (float v1, float v2, const char *copt, const char *cax, float *a, float *b, float *or, float *stp, int *ndig);

V1, V2 are the lower and upper limits of the axis. If V1 > V2, the calculated parameters will be in descending order.
COPT is a character string that can have the values 'NOEXTEND' and 'EXTEND'. For COPT = 'EXTEND', the calculated axis limits can be extended to a full axis step. Otherwise, V1 and V2 are used as axis limits.
CAX is a character string that defines the axis. CAX can have the values 'X', 'Y', and 'Z'.
A, B are the calculated limits of the axis.
OR, STP are the first axis label and the step between labels.
NDIG is the calculated number of digits after the decimal point that should be set with the routine LABDIG for the labels.

Additional notes:


Next | Previous | Contents