Skip navigation links
(Plotc Home Page) (Introduction) (General Description) (Input Description) (Running The Code) (Plotc Man Page) (Plotc_p3d) (Acquiring Plotc) (Change History)

Input Description

This section describes in detail the input to the plotc program, and to the supplied versions of COORS and POINTS. It also describes the parameters that must be computed by user-written versions of COORS and POINTS. Input to plotc is through namelists PTYPE and AXES. Input to the supplied versions of COORS and POINTS is through various types of read statements. Input to any user-supplied version of COORS and/or POINTS is, of course, determined by the user. Multiple plots may be created with one input file by simply stacking sets of input data.

Except for the input to COORS and POINTS, all of the parameters have default values and do not need to be specified by the user unless some other value is desired. Unless stated otherwise, the type of the parameters (real or integer) follows standard Fortran convention. (I.e., those starting with I, J, K, L, M, or N are integer, and the remainder are real.)

Namelist PTYPE

This namelist is used to specify various things about the type of plot to be produced. An asterisk is used to mark those that a casual user is most likely to change from their default values.

Curves and Symbols

The following parameters deal with the number and type of curves and symbol sets to be plotted.

 *  NCURV     Number of curves to be plotted. If NCURV > 0, each curve will be drawn using the line style specified by the input parameter ICTYPE(1). The default for ICTYPE(1) gives a solid line. If NCURV < 0, a different line style will be used for each curve, as specified by the input array ICTYPE. The sum NCURV + NSYMB must be 1000 or less. The default value for NCURV is 1.

 *  NSYMB Number of sets of points to be plotted using symbols. If NSYMB > 0, each set will be plotted using the symbol specified by the input parameter ISTYPE(1). The default for ICTYPE(1) gives a circle. If NSYMB < 0, a different symbol will be used for each set, as specified by the input array ISTYPE. The size of the symbol is specified by the parameter ISIZE1. The sum NCURV + NSYMB must be 1000 or less. The default value for NSYMB is 0.

ISIZE1 An array of NSYMB integers specifying the symbol sizes for the sets of points plotted using symbols. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. The maximum value allowed is 999. This parameter may also be specified for each set by subroutine POINTS. (See the sections on the POINTS Input and on User-Written Subroutines COORS and POINTS.) If so, the corresponding value in the namelist is ignored. The default values are all 10.

    ITYPE     0   for a vector (i.e., line) plot.
1 for a point plot.
2 for a vector-symbol plot.

              This parameter applies to the curves being plotted. In a vector plot, each curve is drawn as a line, as described above for NCURV. In a point plot, each coordinate defining the curve is plotted as a single point. In a vector-symbol plot, each curve is drawn as a line, as described above for NCURV, but with symbols distributed along the curve. A different symbol will be used for each curve, as specified by the input array ISTYPV. The defaults are: circle, square, triangle, diamond, inverted triangle, lower right quadrant circle, upper semicircle, rhombus, pentagon, and house. If more than ten curves are being plotted, this sequence is repeated. The size of the symbol is specified by the parameter ISIZE. The color of the symbol will be the same as the color of the curve. Note that for a purely symbol plot, you should set NCURV = 0 and use a non-zero value for NSYMB. The default value is 0.

    IFREQ     In a vector-symbol plot, a symbol will be plotted every IFREQ points. The default value is 10.

ISIZE Size to be used for the symbols on a vector-symbol curve. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. The maximum value allowed is 999. Note that in a vector-symbol plot, all curves will use the same size symbol. The default value is 10.

ICTYPE An array of integers defining the line styles to be used when plotting curves. The default values for ICTYPE(1-5) are 1, 2, 3, 4, 5, corresponding to the sequence solid, short-dashed, dot-dashed, long-dashed, and dotted. This sequence is repeated to give the default values for the rest of the array.

CLRCRV An array of character variables, specified as CLRCRV(ICURV), defining the colors to be used for each curve. The subscript ICURV is the curve number. E.g., setting CLRCRV = 'RED', 'CYAN' in the input file results in the first curve being red, and the second being cyan. If specified, these colors override those set using RGBCRV, described below.

RGBCRV A two-dimensional array of RGB values, specified as RGBCRV(I,ICURV) defining the colors to be used for each curve. The first subscript varies from 1 to 3, for the red, green, and blue color components, respectively, and the second subscript is the curve number. E.g., setting RGBCRV(1,1) = 1.0, 0.0, 0.0 and RGBCRV(1,2) = 0.0, 1.0, 1.0 in the input file results in the first curve being red, and the second being cyan. The default color for the first curve is black, and the default color for the remaining curves is the first curve color. See the Colors section for a bit more information about specifying colors in plotc.

ISTYPE An array of integers defining the symbol types to be used when plotting sets of points as symbols. The default values for ISTYPE(1-10) are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, corresponding to the sequence circle, square, triangle, diamond, inverted triangle, lower right quadrant circle, upper semicircle, rhombus, pentagon, and house. This sequence is repeated to give the default values for the rest of the array. If ISTYPE > 0, an open symbol is drawn. If ISTYPE < 0, a filled symbol is drawn.

CLRSYM An array of character variables, specified as CLRSYM(ISYMB), defining the colors to be used for each symbol set. The subscript ISYMB is the symbol set number. If specified, these colors override those set using RGBSYM, described below.

RGBSYM A two-dimensional array of RGB values, specified as RGBSYM(I,ISYMB) defining the colors to be used for each symbol set. The first subscript varies from 1 to 3, for the red, green, and blue color components, respectively, and the second subscript is the symbol set number. The default color for the first symbol set is black, and the default color for the remaining symbol sets is the first symbol set color. See the Colors section for a bit more information about specifying colors in plotc.

    IEBAR     0   for no error bars on symbols.
±1 for error bar lengths defined as a fraction of the y-coordinate value.
±2 for error bar lengths specified explicitly in user's units.

              Positive values imply the error bar lengths above and below the symbol are the same. Negative values imply they're different. See the section on the POINTS Input for details on how to specify the error bar lengths, and also Example 2 in the Running the Code section. The length of the endcaps on the error bars will be the same as the length of the tick marks on the axes, specified by the parameter TKLEN in namelist AXES. The color of the error bars will be the same as the color of the symbols. The default value for IEBAR is 0.

    ISTYPV    An array of integers defining the symbol types to be used when plotting vector-symbol curves (ITYPE = 2). This array is used in exactly the same way as the ISTYPE array described above.

    ICLIP     0   for no clipping.
1 to clip curves and symbols at the ends of the axes.

              The default value is 0.

    IMASK(1)  0   to allow material behind open symbols, such as curves, axes, etc., to show.
1 to mask out material behind open symbols.

              The default value is 1.

    OFFSET    Number of x-axis intervals each curve is to be offset in the x-direction. Note that this need not be an integer value. This option is not available if ILOGX = 1. If OFFSET > 0., the x-axis will automatically be extended to account for the offset of curves 2 through NCURV. The user should specify XMAX, NINTX, and XLEN (see namelist AXES) for the first curve and not worry about the offset. The default value is 0.0 (no offset.)

Coordinate Definition Procedure

These parameters determine how the curve and symbol set coordinates are being defined.

The following parameters determine how the coordinates of the curves are being specified when the supplied COORS routine is being used. [Users of the plotxy plotting package will note a remarkable similarity between some of these options and those in plotxy.]

 *  MODEC     0    to read all the x-coordinates, followed by all the y-coordinates, with an 8E10.0 format.
1 to read only the y-coordinates, with equally spaced x-coordinates computed from input values of x0 and Δx.
2 to read x-y coordinate pairs.
4 to read all the x-coordinates, followed by all the y-coordinates. Note that this is the same as the MODE = 0 option, but without the restriction of a fixed format.
20 to read two specified columns of a table as the x and y-coordinates.
30 to get the curve coordinates from a Genplot file.

              The default value is 0, for compatibility with earlier versions of plotc.

    IFILEC    0   to read the coordinates of the curves from the namelist input file.
1 to read the coordinates from a separate file. The file name must be specified via the -a option when plotc is run. If MODEC = 30, IFILEC is automatically set to 1.

              The default value is 0.

    FMTXYC    A character variable of up to 100 characters defining the format to be used for reading the coordinates of the curves. This can be: (1) the single character "*", denoting Fortran list-directed (i.e., free-form) input; (2) the single character "b" (or "B"), denoting Fortran unformatted input; or (3) an ordinary Fortran format specifier, enclosed in parentheses. If list-directed input is being used, the values must be separated by whitespace (i.e., spaces, tabs, and/or new line characters) and/or commas. If unformatted input is being used, the coordinates must be read from a separate file (i.e., IFILEC = 1). The default value is "*".

ISKIPC The number of records to skip before starting to read the coordinates of the curves. This option is most likely to be useful when using the output from another program as input to plotc. The default value is 0.

    IREWC     0   for no rewinding between curves.
1 to go back to beginning of the file for each new curve. This option only applies when MODEC = 20 and IFILEC = 1. With this option, coordinates for multiple curves may be specified from a single table.

              The default value is 0.

The following parameters determine how the coordinates of the symbol sets and the error bar data are being specified when the supplied POINTS routine is being used. Except for the error bar data, these parameters are exactly analogous to those defined above for the curves being plotted.

 *  MODEP     0    to read all the x-coordinates, followed by all the y-coordinates, followed by the error bar data, with an 8E10.0 format.
1 to read only the y-coordinates, followed by the error bar data, with equally spaced x-coordinates computed from input values of x0 and Δx.
2 to read x-y coordinate pairs, followed by the error bar data.
4 to read all the x-coordinates, followed by all the y-coordinates, followed by the error bar data. Note that this is the same as the MODE = 0 option, but without the restriction of a fixed format.
20 to read specified columns of a table as the x and y-coordinates, and the error bar data.

              The default value is 0, for compatibility with earlier versions of plotc.

    IFILEP    0   to read the coordinates of the symbol sets and the error bar data from the namelist input file.
1 to read the coordinates and the error bar data from a separate file. The file name must be specified via the -b option when plotc is run.

              The default value is 0.

    FMTXYP    A character variable of up to 100 characters defining the format to be used for reading the coordinates of the symbol sets and the error bar data. This can be: (1) the single character "*", denoting Fortran list-directed (i.e., free-form) input; (2) the single character "b" (or "B"), denoting Fortran unformatted input; or (3) an ordinary Fortran format specifier, enclosed in parentheses. If list-directed input is being used, the values must be separated by whitespace (i.e., spaces, tabs, and/or new line characters) and/or commas. If unformatted input is being used, the coordinates and error bar data must be read from a separate file (i.e., IFILEP = 1). The default value is "*".

ISKIPP The number of records to skip before starting to read the coordinates of the symbol sets and the error bar data. This option is most likely to be useful when using the output from another program as input to plotc. The default value is 0.

    IREWP     0   for no rewinding between symbol sets.
1 to go back to beginning of the file for each new symbol set. This option only applies when MODEP = 20 and IFILEP = 1. With this option, coordinates for multiple symbol sets may be specified from a single table.

              The default value is 0.

The following parameters may be used to modify the coordinates returned by the COORS and/or POINTS routines. Note that these apply to coordinates returned by user-written routines, as well as the supplied routines. They can be very handy when existing subroutines COORS and/or POINTS are being used, and you would like to modify the returned values. The x-coordinates may be transformed using the equation xplot = ax x + bx. Similarly, the y-coordinates may be transformed using the equation yplot = ay x + by. And finally, the x and y coordinates may be switched.

    AXTR      An array specifying the constants ax. The first NCURV elements (i.e, AXTR(1) through AXTR(NCURV)) apply to the curves being plotted, and the following NSYMB elements (i.e., AXTR(NCURV+1) through AXTR(NCURV+NSYMB) apply to the symbol sets being plotted. The default values are all 1.0.

BXTR An array specifying the constants bx. The first NCURV elements (i.e, BXTR(1) through BXTR(NCURV)) apply to the curves being plotted, and the following NSYMB elements (i.e., BXTR(NCURV+1) through BXTR(NCURV+NSYMB) apply to the symbol sets being plotted. The default values are all 0.0.

AYTR An array specifying the constants ay. This is exactly analogous to AXTR. The default values are all 1.0.

BYTR An array specifying the constants by. This is exactly analogous to BXTR. The default values are all 0.0.

NPLIM The maximum number of points to use in defining a curve. If the number of points NP returned by subroutine COORS is greater than NPLIM, the points will be "thinned" by the minimum integer factor large enough to limit the number of points to NPLIM. The original first and last points will always be included. This parameter may be useful, for example, when the curve coordinates are defined by a machine-generated input file, such as a Genplot file using the MODEC = 30 option. The default is the value of the Fortran parameter NPMAX in the file params.h, which is 100,000 as distributed.

    IREV      1   to switch the x- and y-coordinates returned by subroutines COORS and POINTS. The switch is done after the coordinates have been transformed using the parameters AXTR, etc., described above. The x- and y-axis titles returned by subroutine COORS are also reversed. Note that this only affects the parameters returned by COORS and POINTS. The parameters describing the axes in namelist AXES are not reversed.
0 for no switching.

              The default value is 0.

The Plotting Frame

The following parameters control the placement of the plot on the plotting frame.

 *  IROT      0   to display plot in portrait mode.
1 to display plot in landscape mode.

              The default value is 0.

    XORGN     The x-location on the plotting frame of the lower left corner of the plot, in relative units. The default is to center the plot horizontally on the frame, but with a minimum XORGN value of 1.5 to allow room for the y-axis labels and title.

YORGN The y-location on the plotting frame of the lower left corner of the plot, in relative units. The default is to center the plot vertically on the frame, but with a minimum YORGN value of 1.0 to allow room for the x-axis labels and title. [If IYAXIS = 3 in namelist AXES, suppressing the plotting of the y-axis and its labels, defaulting XORGN will center the plot horizontally with no minimum XORGN value. Similarly, if IXAXIS = 3, defaulting YORGN will center the plot vertically with no minimum YORGN value.]

PGHGT Paper height in inches for the PostScript plot. The default value is 11.0 in portrait mode, and 8.5 in landscape mode.

PGWID Paper width in inches for the PostScript plot. The default value is 8.5 in portrait mode, and 11.0 in landscape mode.

FHGT Frame height in relative units for the OpenGL plot, and in inches for the PostScript plot. The default value is 11.0 in portrait mode, and 8.5 in landscape mode.

FWID Frame width in relative units for the OpenGL plot, and in inches for the PostScript plot. The default value is 8.5 in portrait mode, and 11.0 in landscape mode. [Note that the values of FHGT and FWID do not affect the physical size of the window on the graphics monitor. The size of the window depends on the size of the monitor. The shape is determined by the ratio FWID/FHGT. The PostScript plot is printed on paper measuring PGWID × PGHGT inches. If necessary, the PostScript plot will be rescaled to fit on the page.]

CLRBK A character variable defining the color to be used for the background. If specified, this color overrides one set using RGBBK, described below.

RGBBK An array of three RGB values defining the color to be used for the background. For the OpenGL version of the plot, the default is a white background; for the PostScript plot, the default is to not fill the background at all. [Note, however, that when the IMASK input parameters indicate that material behind symbols, strings, and the legend is to be masked out, the area is actually filled with the background color. If no background color is specified, the area is filled with white. This may not be desirable if the PostScript plot is printed on non-white paper.] See the Colors section for a bit more information about specifying colors in plotc.

Text String Characteristics

The following parameters determine the character fonts and sizes to be used for titles, labels, etc.

 *  ITITLE    A 3-element array, specified as ITITLE(I), indicating whether or not titles should be included on the plot. The subscript I = 1 for the plot title, 2 for the x-axis title, and 3 for the y-axis title. The font to be used is specified by FONTS(2). Valid values for ITITLE(I) are:

0   for no title.
1 to include a title.

ITITLE(1) may be specified as ±1. A value of +1 puts the plot title at the top of the plot, and −1 puts it at the top of the frame. The default values are 0, 1, 1.

TALIGN An array of character variables, given as TALIGN(I), specifying how the plot and axis titles are to be aligned. The subscript I = 1 for the plot title, 2 for the x-axis title, and 3 for the y-axis title. Valid values are LEFT, CENTER, or RIGHT, resulting in left-aligned, centered, and right-aligned titles, respectively. All alignment will be with respect to the plot, with one exception. If ITITLE(1) = −1, the plot title will be aligned with respect to the frame. The default values are LEFT, CENTER, CENTER, resulting in a left-aligned plot title, and centered x- and y-axis titles.

FONTS An array of character variables, given as FONTS(I), specifying the fonts to be used on the plot. [This parameter is currently supported only for the PostScript version of the plot.] The subscript I = 1 for the axis labels, 2 for the axis and plot titles, 3 for the legend, and 4 for user-specified text strings. Valid values for FONTS(I) are:

Helvetica Bold.
H    Helvetica.
HB
HO Helvetica Oblique.
HD Helvetica Bold Oblique.
R Times Roman.
B Times Bold.
I Times Italic.
BI Times Bold Italic.
C Courier.
CB Courier Bold.
CO Courier Oblique.
CD Courier Bold Oblique.
S Symbol.

The default values are all H.

 *  ISIZET Size of characters in axis and plot titles. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. [This parameter is currently supported only for the PostScript version of the plot.] The default value is 18.

 *  ISIZEL Size of characters in axis labels. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. [This parameter is currently supported only for the PostScript version of the plot.] The default value is 16.

Text Strings at Arbitrary Locations

The following parameters may be used to write strings of text at user-specified locations on the plot. Up to 50 strings may be written. The maximum number of characters allowed in each string, including those used to specify special characters, subscripts, etc., is 100. The font to be used is specified by FONTS(4).

    NSTR      1   if the values of XSTR and YSTR, described below, are in user's units.
−1 if the values of XSTR and YSTR are in relative units.

              The default value is 1.

    XSTR      An array, given as XSTR(ISTR), specifying the x-locations of the strings. The subscript ISTR is the string number. XSTR may be specified in either user's or relative units, depending on the value of NSTR. The default values are all 0.

YSTR An array, given as YSTR(ISTR), specifying the y-location of the baseline of the strings. The subscript ISTR is the string number. YSTR may be specified in either user's or relative units, depending on the value of NSTR. The default values are all 0.

ASTR An array of character variables, given as ASTR(ISTR), specifying the contents of the strings. The subscript ISTR is the string number. Each string must be 100 characters or less. The default values are all blanks.

ISIZES An array, given as ISIZES(ISTR), specifying the sizes of the characters to be used in the strings. The subscript ISTR is the string number. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. [This parameter is currently supported only for the PostScript version of the plot.] The default values are all 12.

CLRSTR An array of character variables, specified as CLRSTR(ISTR), defining the colors to be used for each string. The subscript ISTR is the string number. If specified, these colors override those set using RGBSTR, described below.

RGBSTR A two-dimensional array of RGB values, specified as RGBSTR(I,ISTR) defining the colors to be used for each string. The first subscript varies from 1 to 3, for the red, green, and blue color components, respectively, and the second subscript is the string number. The default for the first string is the color of the x-axis title; the default for the remaining strings is the color of the first string. See the Colors section for a bit more information about specifying colors in plotc.

SALIGN An array of character variables, given as SALIGN(ISTR), specifying how strings are to be aligned with respect to the coordinates given by XSTR and YSTR. The subscript ISTR is the string number. Valid values are LEFT, CENTER, or RIGHT, resulting in left-aligned, centered, and right-aligned strings, respectively. The default values are all LEFT.

    IMASK(2)  0   to allow material behind the strings, such as curves, axes, etc., to show.
1 to mask out material behind the strings.

              The default value is 1.

Legend Table

The following parameters control the placement and contents of a legend table on the plot. The font to be used is specified by FONTS(3).

 *  ILEGND    0   for no legend.
±1 for a standard two-column legend. The first column will list the distinct types of curves that were plotted, followed by the distinct types of symbols that were plotted. In determining "distinctness," curves and symbols drawn with different colors are considered distinct. In addition, two sets of the same symbol plotted at different sizes are considered distinct. The user must specify the contents of the second column in the input variable ALEG, described below.
±2 for a generalized legend. The user must specify the contents of each column in the input variable ALEG, described below.

              If ILEGND > 0, the values of XLEG and YLEG, described below, must be in user's units. If ILEGND < 0, they must be in relative units. The default value is 0.

    XLEG      The x-location of the upper left corner of the legend table, in either user's or relative units, depending on the sign of ILEGND. The default is to put the legend table in the upper right corner of the plot if ILEGND > 0, or the frame if ILEGND < 0.

YLEG The y-location of the upper left corner of the legend table, in either user's or relative units, depending on the sign of ILEGND. The default is to put the legend table in the upper right corner of the plot if ILEGND > 0, or the frame if ILEGND < 0.

NLEGC Number of columns in the legend table. This parameter is only needed if ILEGND = ±2. The maximum allowed value is 10. The default value is 2.

NLEGR Number of rows in the legend table, not counting the header row. The maximum allowed value is 50. This parameter is only needed if ILEGND = ±2. There is no default value.

HDLEG An array of character variables, specified as HDLEG(ILEGC), giving the header for column ILEGC in the legend table. The subscript ILEGC thus varies from 1 to NLEGC. Each header must be 100 characters or less. The default values are all blanks.

CLRLHD A character variable defining the color to be used for the headers. If specified, this color overrides one set using RGBLHD, described below.

RGBLHD An array of three RGB values defining the color to be used for the headers. The default is the color of the x-axis title. See the Colors section for a bit more information about specifying colors in plotc.

ALEG An array of character variables, specified as ALEG(ILEGR,ILEGC), giving the contents of row ILEGR, column ILEGC, in the legend table. The subscript ILEGR thus varies from 1 to NLEGR, and ILEGC varies from 1 to NLEGC. Within each column, each element must be 100 characters or less. If ILEGND = ±1, only ALEG(ILEGR,2) (i.e., the contents of the second column) should be specified. Lines and symbols representing the distinct types of curves and symbols being plotted will automatically be drawn in column one.

If ILEGND = ±2, and if ALEG(ILEGR,ILEGC) = '\CRVn' or '\crvn', where n is a 1 or 2 digit integer, a straight line will be plotted in row ILEGR, column ILEGC, representing curve number n. Similarly, if ILEGND ±2, and if ALEG(ILEGR,ILEGC) = '\SYMn' or '\symn', where n is a 1 or 2 digit integer, a symbol will be plotted in row ILEGR, column ILEGC, representing symbol set number n.

The default values are all blanks.

CLRLTX An array of character variables, specified as CLRLTX(ILEGR), defining the colors to be used for the text in each row of the legend. [Lines and symbols in the legend representing curves and symbol sets, for both the standard two-column legend and the generalized legend, will automatically be drawn using the colors of the corresponding curves and symbol sets.] The subscript ILEGR is the row number. If specified, these colors override those set using RGBLTX, described below.

RGBLTX A two-dimensional array of RGB values, specified as RGBLTX(I,ILEGR) defining the colors to be used for the text in each row of the legend. The first subscript varies from 1 to 3, for the red, green, and blue color components, respectively, and the second subscript is the row number. The default is the color of the legend header. See the Colors section for a bit more information about specifying colors in plotc.

ILCLR For the standard two-column legend only, setting ILCLR = 1 causes the text in the second column to automatically be colored the same as the corresponding line or symbol in the first column. The default value is 0.

ISIZEG Size of characters in the legend. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. [The maximum value allowed is 999. This parameter is currently supported only for the PostScript version of the plot.] The default value is 12.

    ILEGBX    0   for a legend without an outlining box.
1 to draw an outlining box around the legend table, with vertical lines between the columns and a horizontal line below the header.
−1 to draw an outlining box around the legend table, without lines between the columns or below the header.

              The default value is 0.

    CLRLBX    A character variable defining the color to be used for the outlining box. If specified, this color overrides one set using RGBLBX, described below.

RGBLBX An array of three RGB values defining the color to be used for the outlining box. The default is the color of the x- and y-axes. See the Colors section for a bit more information about specifying colors in plotc.

    IMASK(3)  0   to allow material in the legend area, such as curves, axes, etc., to show.
1 to mask out material in the legend area.

              The default value is 1.

Output Devices

The following parameters deal with the type of output device(s) to be used.

    IDEV      1   to display each plot in a window on the graphics monitor using OpenGL routines.
2 to create PostScript versions of each plot, suitable for printing on a PostScript printer.

              More than one device may be specified by setting IDEV equal to the sum of the values for the desired devices. The default value is 3, corresponding to both OpenGL and PostScript output.

Debugging

The following parameter may be useful when nothing seems to work right.

    IDEBUG    A 20-element array used to turn on debug printout. This output is printed on Fortran unit 30. Except where noted, set IDEBUG(I) = 1 for printout number I. Those currently available are as follows:

Number I   Printout
1 Namelist PTYPE and AXES input.
2 Coordinates of each curve being plotted.
3 Coordinates of the IDEBUG(3)'th curve (only if IDEBUG(2) = 0).
4 Coordinates of each set of points being plotted as symbols.
5 Coordinates of the IDEBUG(5)'th set of points (only if IDEBUG(4) = 0).
6 The input to subroutines LABLGL and LABLPS.
7 The input to subroutines PLOTGL and PLOTPS.
8 The input to subroutines XAXGL and XAXPS.
9 The input to subroutines YAXGL and YAXPS.
11 Parameters used for plots with OFFSET > 0.

The default values are all 0.

Namelist AXES

The parameters in this namelist describe the types of axes to be used. An asterisk is used to mark those that a casual user is most likely to change from their default values.

 *  ISCALE    0   to get axis scales automatically.
1 to read in scales for both the x- and y-axes.
2 to read in x-axis scales and get y-axis scales automatically.
3 to read in y-axis scales and get x-axis scales automatically.
4 same as 0, but also computes the length of the x-axis XLEN, overriding any specified value, to make the x- and y-scales the same (e.g., for non-distorted geometry plots.) If necessary, the plot will be reduced to fit within the frame width.

              The default value is 0.

    CLRAX     A character variable defining the color to be used for the axes. If specified, this color overrides one set using RGBAX, described below.

RGBAX An array of three RGB values defining the color to be used for the axes. The default is black. See the Colors section for a bit more information about specifying colors in plotc.

 *  XMIN Starting value for the x-axis, in user's units. Not needed if ISCALE = 0, 3, or 4. The default value is 0.

 *  XMAX      Ending value for the x-axis, in user's units. Not needed if ISCALE = 0, 3, or 4. The default value is 1.

 *  YMIN      Starting value for the y-axis, in user's units. Not needed if ISCALE = 0, 2, or 4. The default value is 0.

 *  YMAX      Ending value for the y-axis, in user's units. Not needed if ISCALE = 0, 2, or 4. The default value is 1.

 *  NINTX     Number of x-axis intervals, or log cycles if ILOGX = 1. The default value is 5.

 *  NINTY     Number of y-axis intervals, or log cycles if ILOGY = 1. [For logarithmic axes, the number of intervals and/or the starting and ending values for the axes may be modified by plotc to be self-consistent.] The default value is 5.

 *  XLEN      Length of x-axis in relative units. If XLEN > FWID, the plot will extend over more than one frame. The default value is the number of intervals, NINTX.

 *  YLEN      Length of y-axis in relative units. YLEN must be less than or equal to FHGT. The default value is the number of intervals, NINTY.

 *  XTITLE    A character variable specifying the title for the x-axis (up to 100 characters.) If specified, this overrides the x-axis title supplied by subroutine COORS. The default value is all blanks.

CLRXT A character variable defining the color to be used for the x-axis title. If specified, this color overrides one set using RGBXT, described below.

RGBXT An array of three RGB values defining the color to be used for the x-axis title. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

 *  YTITLE    A character variable specifying the title for the y-axis (up to 100 characters.) If specified, this overrides the y-axis title supplied by subroutine COORS. The default value is all blanks.

CLRYT A character variable defining the color to be used for the y-axis title. If specified, this color overrides one set using RGBYT, described below.

RGBYT An array of three RGB values defining the color to be used for the y-axis title. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

 *  PTITLE    A character variable specifying the title for the top of the plot (up to 100 characters.) If specified, this overrides the plot title supplied by subroutine COORS. The default value is all blanks.

CLRPT A character variable defining the color to be used for the plot title. If specified, this color overrides one set using RGBPT, described below.

RGBPT An array of three RGB values defining the color to be used for the plot title. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

    IXAXIS    0   to plot the x-axis without tick marks or grid lines.
1 to plot the x-axis with tick marks above the axis.
−1 to plot the x-axis with tick marks below the axis.
2 to plot the x-axis with grid lines.
3 to suppress plotting of the x-axis.

              In the PostScript plot, interior grid lines will be drawn in a lighter color. The default value is 1.

    IYAXIS    0   to plot the y-axis without tick marks or grid lines.
    1 to plot the y-axis with tick marks to the right of the axis.
−1 to plot the y-axis with tick marks to the left of the axis.
2 to plot the y-axis with grid lines.
3 to suppress plotting of the y-axis.

              In the PostScript plot, interior grid lines will be drawn in a lighter color. The default value is 1.

    TKLEN     Length of tick marks and error bar endcaps in relative units. The default value is 0.1.

CLRGRD A character variable defining the color to be used for tick marks or grid lines. If specified, this color overrides one set using RGBGRD, described below.

RGBGRD An array of three RGB values defining the color to be used for tick marks or grid lines. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

GRAYGR Interior grid lines are by default drawn in a lighter version of the color specified by CLRGRD or RGBGRD, according to the formula
   rgb = rgbgrd + graygr*(1.-rgbgrd)
which is applied to each of the RGB values. The parameter GRAYGR thus specifies the "lightness" factor. Valid values range from 0.0 (interior grid lines will not be lightened at all) to 1.0 (interior grid lines will be white). The default value is 0.8.

    IFRAME    0   for no frame.
1 to put a frame around the plot by drawing horizontal lines at YMIN and YMAX, and vertical lines at XMIN and XMAX.
2 to put a frame around the plot, with tick marks added.

              The frame will be drawn in the same color as the axes. The default value is 0.

    ILOGX     0   for a standard x-axis.
1 for a logarithmic x-axis.

              The default value is 0.

    ILOGY     0   for a standard y-axis.
1 for a logarithmic y-axis.

              The default value is 0.

    INOTX     0   to use floating or fixed notation (depending on the values) for the x-axis labels.
1 to use scientific notation for the x-axis labels.

              For standard axes, the default value is 0. Logarithmic axes automatically use scientific notation.

    INOTY     0   to use floating or fixed notation (depending on the values) for the y-axis labels.
1 to use scientific notation for the y-axis labels.

              For standard axes, the default value is 0. Logarithmic axes automatically use scientific notation.

    NLABX     Number of numeric labels to be placed on the x-axis. [The labels will be evenly spaced on the x-axis. Depending on the values of NLABX and NINTX, they may or may not be lined up with the tick marks or grid lines. This comment also applies to the values of NLABY and NINTY, and the placement of the y-axis labels.] The font to be used is specified by FONTS(1). The maximum value is 51. The default value is NINTX + 1 (i.e., each tick mark or grid line is labeled.)

CLRXLB A character variable defining the color to be used for the x-axis labels. If specified, this color overrides one set using RGBXLB, described below.

RGBXLB An array of three RGB values defining the color to be used for the x-axis labels. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

NLABY Number of numeric labels to be placed on the y-axis. The font to be used is specified by FONTS(1). The maximum value is 51. The default value is NINTY + 1 (i.e., each tick mark or grid line is labeled.)

CLRYLB A character variable defining the color to be used for the y-axis labels. If specified, this color overrides one set using RGBYLB, described below.

RGBYLB An array of three RGB values defining the color to be used for the y-axis labels. The default is the color of the axes. See the Colors section for a bit more information about specifying colors in plotc.

XORGU x-coordinate of x-axis origin (i.e., the point where the plotted axes will cross) in user's units. The default value is XMIN.

YORGU y-coordinate of y-axis origin (i.e., the point where the plotted axes will cross) in user's units. The default value is YMIN.

COORS Input

After namelists PTYPE and AXES are read, subroutine COORS is called by plotc NCURV times (i.e., once for each curve being plotted) to get the number of points and the coordinates for each curve. The first time it is called (i.e., for the first curve) it also returns titles for the axes and for the plot itself. These will be used if the titles are not specified in namelist AXES. If NCURV = 0, subroutine COORS is still called once, to get the titles.

This subroutine COORS may either be user-supplied, or the version supplied with plotc may be used. Details on the parameters to be returned by a user-written version of subroutine COORS are presented in the next section. If the supplied version of COORS is being used, the titles and coordinates are read using Fortran read statements. The exact form of the data depends on the value of the input parameter MODEC, as described below.

The coordinates may be included in the namelist input file immediately following the titles, or, if IFILEC = 1, they may be read from a separate file. If they are being read from a separate file, the file name must be specified via the -a option when plotc is run. Note that this separate file contains only the coordinates. Any other needed information, such as the number of points NP, the values of x0 and Δx in the MODEC = 1 option, etc., are read from the namelist input file, following the titles. If NCURV = 0, you should not supply your own version of COORS, and the titles should be input as described below.

For all values of MODEC, the following three records must immediately follow the end of namelist AXES. However, if the titles are being specified in the namelist, those specified here will be overwritten.

Record 1
    XTITLE    Title for the x-axis (100 characters maximum.)

Record 2
    YTITLE    Title for the y-axis (100 characters maximum.)

Record 3
    PTITLE    Title for the top of the plot (100 characters maximum.)

MODEC = 0

With this option, the coordinates of the curves are specified by reading all the x-coordinates, followed by all the y-coordinates, with formatted read statements. [Note that this option is similar to the MODEC = 4 option, but with the restriction of a fixed format. The only cases that would require MODEC = 0 instead of MODEC = 4 are those in which the coordinates are not separated by whitespace or commas. It is included for compatibility with earlier versions of plotc.] The input is described in detail below. The value of NP is read from the namelist input file, immediately following the titles. The coordinates themselves may be read from the namelist input file, or, if IFILEC = 1, from a separate file. Note that records 4, 5+, and 6+ are repeated NCURV times.

Record 4 (Format I6)
    NP        Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+ (Format 8E10.0)
    X(I)      x-coordinates of curve, where I = 1 to NP.

Records 6+ (Format 8E10.0)
    Y(I)      y-coordinates of curve, where I = 1 to NP.

An example is available illustrating the use of the supplied COORS routine with MODEC = 0.

MODEC = 1

With this option, the coordinates of the curves are specified by reading only the y-coordinates. The format is determined by the input parameter FMTXYC. The x-coordinates are equally spaced, and computed from input values of x0 and Δx. The input is described in detail below. The values of NP, X0, and DX are read from the namelist input file, immediately following the titles. The coordinates themselves may be read from the namelist input file, or, if IFILEC = 1, from a separate file. Note that records 4, 5+, and 6+ are repeated NCURV times.

Record 4
    NP        Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X0,DX     Starting value x0 and increment Δx. The x-coordinate is computed from xi = x0 + (i - 1) Δx, for i = 1 to NP.

Records 6+
    Y(I)      y-coordinates of curve, where I = 1 to NP.

MODEC = 2

With this option, the coordinates of the curves are specified by reading x-y coordinate pairs. The format is determined by the input parameter FMTXYC. The input is described in detail below. The value of NP is read from the namelist input file, immediately following the titles. The coordinates themselves may be read from the namelist input file, or, if IFILEC = 1, from a separate file. Note that records 4 and 5+ are repeated NCURV times.

Record 4
    NP          Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X(I),Y(I)   x- and y-coordinates of curve, where I = 1 to NP.

MODEC = 4

With this option, the coordinates of the curves are specified by reading all the x-coordinates, followed by all the y-coordinates. The format is determined by the input parameter FMTXYC. The input is described in detail below. The value of NP is read from the namelist input file, immediately following the titles. The coordinates themselves may be read from the namelist input file, or, if IFILEC = 1, from a separate file. Note that records 4, 5+, and 6+ are repeated NCURV times.

Record 4
    NP        Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X(I)      x-coordinates of curve, where I = 1 to NP.

Records 6+
    Y(I)      y-coordinates of curve, where I = 1 to NP.

MODEC = 20

With this option, the coordinates of the curves are specified by reading a table of values, with specified columns corresponding to the x- and y-coordinates. The format is determined by the input parameter FMTXYC. The input is described in detail below. The values of NP, ICOLX, and ICOLY are read from the namelist input file, immediately following the titles. The table itself may be read from the namelist input file, or, if IFILEC = 1, from a separate file. Note that records 4 and 5 are repeated NCURV times. Normally, records 6+ are also repeated NCURV times. However, if IFILEC = 1 and IREWC = 1, the file will be rewound after each curve, thus allowing multiple curves to be specified from a single table. In this case records 6+ are not repeated.

Record 4
    NP            Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Record 5
    ICOLX,ICOLY   The column numbers in the table that correspond to the x- and y-coordinates.

Records 6+
    TABLE(I,J)    A table of NP rows and NCOL columns, where I = 1 to NP and J = 1 to NCOL, and NCOL ≤ 40.

An example is available illustrating the use of the supplied COORS routine with MODEC = 20.

MODEC = 30

With this option, the coordinates of the curves are specified in a Genplot file. [Genplot files are created by some post-processing utilities used with the NASTD and Wind-US Navier-Stokes CFD codes. Currently, plotc can only process Genplot files with data for a single plot.] The name of the Genplot file must be specified using the -a option when plotc is run. The input is described in detail below. If plot and axes titles are not specified in the namelist input file, the titles in the Genplot file will be used. [The plot title, if needed, will be created by combining the main plot title and the plot sub-title from the Genplot file.] The individual curve titles in the Genplot file are ignored. If the absolute value of the plotc input parameter NCURV is inconsistent with the number of curves NCURVG specified in the Genplot file, a warning message will be printed, and the NCURV value will be used. The line styles for the curves will still be controlled by the sign of NCURV.

There are two possible formats for Genplot files, determined by the sign of the parameter NCURVG in the file. The first has multiple arrays of x and y coordinates, and the second has a single array of x coordinates and multiple arrays of y coordinates. For both formats, the first five records in the file (numbered 4-8 here, since records 1-3 are the axes and plot titles in the plotc namelist input file) are as follows:

Record 4
    MTITLE      Main plot title.

Record 5
    STITLE      Plot sub-title.

Record 6
    XTITLE      x-axis title.

Record 7
    YTITLE      y-axis title.

Record 8
    NCURVG      Parameter whose absolute value is the number of curves.

The format for the remainder of the file depends on the sign of NCURVG. If NCURVG > 0, records 9, 10, and 11+ are repeated as a set NCURVG times.

Record 9
    CTITLE      Curve title (ignored by plotc).

Record 10
    NP          Number of points in this curve. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 11+
    X(I),Y(I)   x- and y-coordinates of curve, where I = 1 to NP.

If NCURVG < 0, record 9 is repeated |NCURVG| times, followed by records 10 and 11+.

Record 9
    CTITLE      Curve title (ignored by plotc).

Record 10
    NP          Number of points in curves. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 11+
   X(I),Y1(I),Y2(I),...,Yn(I)
                x- and y-coordinates of curves, where I = 1 to NP, and n represents the number of curves.

POINTS Input

At this point, subroutine POINTS is called by plotc NSYMB times (i.e., once for each set of points to be plotted as symbols) to get the number of points, the coordinates for each set of points, and the error bar data. As with subroutine COORS, subroutine POINTS may either be user-supplied, or the version supplied with plotc may be used. Details on the parameters to be returned by a user-written version of subroutine POINTS are presented in the next section. If the supplied version of POINTS is being used, the coordinates and error bar data are read using Fortran read statements. The exact form of the data depends on the value of the input parameter MODEP.

The coordinates and error bar data may be included in the namelist input file immediately following the coordinates of the curves, or, if IFILEP = 1, they may be read from a separate file. If they are being read from a separate file, the file name must be specified via the -b option when plotc is run. Note that this separate file contains only the coordinates and error bar data. Any other needed information, such as the number of points NP, the values of x0 and Δx in the MODEP = 1 option, etc., is read from the namelist input file, following the coordinates of the curves.

The parameters MODEP, IFILEP, FMTXYP, ISKIPP, and IREWP determine how the coordinates of the symbol sets and the error bar data are being specified. Except for the error bar data, they are exactly analogous to the corresponding parameters described in the previous section for the COORS routine. The supplied version of subroutine POINTS is similar to the supplied version of subroutine COORS, except for the addition of the error bar data, and the fact that the axes and plot titles are not required.

MODEP = 0

With this option, the coordinates of the symbol sets and the error bar data are specified by reading all the x-coordinates, followed by all the y-coordinates, followed by the error bar data, with formatted read statements. [Note that this option is similar to the MODEP = 4 option, but with the restriction of a fixed format. The only cases that would require MODEP = 0 instead of MODEP = 4 are those in which the values are not separated by whitespace or commas. It is included for compatibility with earlier versions of plotc.] The input is described in detail below. The value of NP is read from the namelist input file, immediately following the curve coordinates. The coordinates of the symbol sets and the error bar data may be read from the namelist input file, or, if IFILEP = 1, from a separate file. Note that records 4-8+ are repeated NSYMB times.

Record 4 (Format I6) [For compatibility with earlier versions of plotc, if MODEP = 0 the record specifying NP is actually read using a 2I6 format, with the second value being the symbol size. If non-zero this value will override the corresponding value of ISIZE1 specified in namelist PTYPE.]
    NP         Number of points in this symbol set. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+ (Format 8E10.0)
    X(I)       x-coordinates of symbol set, where I = 1 to NP.

Records 6+ (Format 8E10.0)
    Y(I)       y-coordinates of symbol set, where I = 1 to NP.

Records 7+ (Format 8E10.0, only if IEBAR is non-zero)
    YERR1(I)   Length of error bars above symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

Records 8+ (Format 8E10.0, only if IEBAR < 0)
    YERR2(I)   Length of error bars below symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

An example is available illustrating the use of the supplied POINTS routine with MODEP = 0.

MODEP = 1

With this option, the coordinates of the symbol sets and the error bar data are specified by reading the y-coordinates, followed by the error bar data. The format is determined by the input parameter FMTXYP. The x-coordinates are equally spaced, and computed from input values of x0 and Δx. The input is described in detail below. The values of NP, X0, and DX are read from the namelist input file, immediately following the curve coordinates. The coordinates of the symbol sets and the error bar data may be read from the namelist input file, or, if IFILEP = 1, from a separate file. Note that records 4-8+ are repeated NSYMB times.

Record 4
    NP         Number of points in this symbol set. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X0,DX      Starting value x0 and increment Δx. The x-coordinate is computed from xi = x0 + (i - 1) Δx, for i = 1 to NP.

Records 6+
    Y(I)       y-coordinates of symbol set, where I = 1 to NP.

Records 7+ (Only if IEBAR is non-zero)
    YERR1(I)   Length of error bars above symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

Records 8+ (Only if IEBAR < 0)
    YERR2(I)   Length of error bars below symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

MODEP = 2

With this option, the coordinates of the symbol sets are specified by reading x-y coordinate pairs, followed by the error bar data. The format is determined by the input parameter FMTXYP. The input is described in detail below. The value of NP is read from the namelist input file, immediately following the curve coordinates. The coordinates of the symbol sets and the error bar data may be read from the namelist input file, or, if IFILEP = 1, from a separate file. Note that records 4-7+ are repeated NSYMB times.

Record 4
    NP          Number of points in this symbol set. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X(I),Y(I)   x- and y-coordinates of symbol set, where I = 1 to NP.

Records 6+ (Only if IEBAR is non-zero)
    YERR1(I)    Length of error bars above symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

Records 7+ (Only if IEBAR < 0)
    YERR2(I)    Length of error bars below symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

MODEP = 4

With this option, the coordinates of the symbol sets and the error bar data are specified by reading all the x-coordinates, followed by all the y-coordinates, followed by the error bar data. The format is determined by the input parameter FMTXYP. The input is described in detail below. The value of NP is read from the namelist input file, immediately following the curve coordinates. The coordinates of the symbol sets and the error bar data may be read from the namelist input file, or, if IFILEP = 1, from a separate file. Note that records 4-8+ are repeated NSYMB times.

Record 4
    NP         Number of points in this symbol set. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Records 5+
    X(I)       x-coordinates of symbol set, where I = 1 to NP.

Records 6+
    Y(I)       y-coordinates of symbol set, where I = 1 to NP.

Records 7+ (Only if IEBAR is non-zero)
    YERR1(I)   Length of error bars above symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

Records 8+ (Only if IEBAR < 0)
    YERR2(I)   Length of error bars below symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

MODEP = 20

With this option, the coordinates of the symbol sets and the error bar data are specified by reading a table of values, with specified columns corresponding to the x- and y-coordinates and the error bar data. The format is determined by the input parameter FMTXYP. The input is described in detail below. The values of NP, ICOLX, ICOLY, ICOLE1, and ICOLE2 are read from the namelist input file, immediately following the curve coordinates. The table itself may be read from the namelist input file, or, if IFILEP = 1, from a separate file. Note that records 4 and 5 are repeated NSYMB times. Normally, records 6+ are also repeated NSYMB times. However, if IFILEP = 1 and IREWP = 1, the file will be rewound after each symbol set, thus allowing multiple symbol sets to be specified from a single table. In this case records 6+ are not repeated.

Record 4
    NP           Number of points in this symbol set. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

Record 5
   ICOLX,ICOLY,ICOLE1,ICOLE2
                 The column numbers in the table that correspond to the x- and y-coordinates of the symbol set, and the error bar parameters YERR1 and YERR2 as defined for MODEP = 0, etc.

Records 6+
    TABLE(I,J)   A table of NP rows and NCOL columns, where I = 1 to NP and J = 1 to NCOL, and NCOL ≤ 40.

User-Written Subroutines COORS and POINTS

As described in previous sections, after namelists PTYPE and AXES are read, subroutine COORS is called NCURV times (i.e., once for each curve being plotted) to get the number of points and the coordinates for each curve. Similarly, subroutine POINTS is called NSYMB times (i.e., once for each set of points to be plotted as symbols) to get the number of points and the coordinates for each set of points, and the error bar data.

User-written versions of COORS and/or POINTS must be compiled and linked into the executable during the build process, as described in the section Building With User-Written COORS/POINTS Routines. [In version 2.5 of plotc, for SGI systems, user-written versions of COORS and/or POINTS may be specified via command-line options at run time. Unfortunately, due to the variety of compilers available for Linux systems, and the variety of installation locations for OpenGL routines, that capability is not currently available under Linux.]

If user-supplied COORS and/or POINTS routines are being used, any input they require is, of course, determined by the user. The current section describes the output parameters that must be computed by these subroutines, and passed back to plotc via the argument lists.

Again, subroutine COORS is called once for each curve in a plot. The rest of the plotc program doesn't care what goes on inside COORS, as long as it returns the number of points in the curve and their x-y coordinates. The first time it is called (i.e., for the first curve) it may also return titles for the axes and for the plot itself. These will be used if the titles are not specified in namelist AXES.

The argument list for subroutine COORS is (X,Y,NP,ICURV,XTITLE,YTITLE,PTITLE), where:

    ICURV     An input parameter specifying the number of the current curve.

    X The output array of NP x-coordinates for curve ICURV.

    Y The output array of NP y-coordinates for curve ICURV.

    NP An output parameter specifying the number of points in curve ICURV. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

    XTITLE An output character variable specifying the x-axis title (up to 100 characters.) This is only needed when ICURV = 1, and only if ITITLE(2) = 1.

    YTITLE An output character variable specifying the y-axis title (up to 100 characters.) This is only needed when ICURV = 1, and only if ITITLE(3) = 1.

    PTITLE An output character variable specifying the plot title (up to 100 characters.) This is only needed when ICURV = 1, and only if ITITLE(1) = 1.

Just as subroutine COORS is called once for each curve, subroutine POINTS is called once for each set of points to be plotted as symbols. The argument list is (X,Y,YERR1,YERR2,NP,ISYMB,ISIZED), where:

    ISYMB     An input parameter specifying the number of the current set of points.

    X The output array of NP x-coordinates for set ISYMB.

    Y The output array of NP y-coordinates for set ISYMB.

    YERR1 The output array giving the length of error bars above symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

    YERR2 The output array giving the length of error bars below symbols, specified as either a fraction of the y-coordinate value (if IEBAR = ±1), or explicitly in user's units (if IEBAR = ±2).

    NP An output parameter specifying the number of points in set ISYMB. The total number of points on the plot (i.e., the sum for all the curves and symbol sets) must be no more than 100,000.

    ISIZED An output parameter specifying the size of the symbol to be used for set ISYMB. The size is in 1/72's of a relative unit for the OpenGL plot, and 1/72's of an inch for the PostScript plot. If ISIZED is not specified, the value of ISIZE1 in namelist PTYPE will be used.

An example is available illustrating the use of a user-written COORS routine.


Last updated 3 Nov 2005