PSPLOT Subroutines

This section describes the user-level subroutines in the PSPLOT plotting library. These routines are Fortran-callable from an application program. Below is a brief summary of the subroutines, followed by an alphabetical listing of each subroutine containing a more detailed description of its function, syntax, and calling arguments.

Note that the code examples here are shown in black and white and grayscale, as that is how they are produced in the hardcopy User's Manual. PSPLOT fully supports color graphics.

* ARC Draws an arc of a specified radius and center.

* AROHED Draws an arrowhead at a specified location.

* ARROW Draws an arrow including the shaft.

* AXIS Draws an axis of a graph, with user-specified axis titles.

* BLKSTP Strips out embedded blanks in a character string.

* BORDER Draws a rectangular border with tick marks.

* CHOPIT Logically closes the current page and begins a new one.

* CIRCLE Draws a circle with specified center, radius and fill.

* CLIP Inserts the PostScript command clip into the output file.

* CLIPBOX Defines the current clipping area.

* COLBOX Fills regions with specified color.

* CONCOLR Draws colored contour plots of a 2-dimensional array of regularly-spaced data.

* CONFILL Draws grayscale contour plots of a 2-dimensional array of regularly-spaced data.

* CONREC Draws contour plots of a 2-dimensional array of regularly-spaced data.

* CURVE Draws a curve between 2 points with specified beginning and ending slopes.

* DRWCRV Connects data points with a solid line.

* DRWTRI Draws a triangle.

* DSHCRV Connects data points with a dashed curve.

* DSHLIN Draws a dashed line between two points.

* FACTOR Enlarges or reduces a plot by a specified ratio.

* FAROHED Draws a "fancy" arrowhead.

* FILLBOX Fills a shape with a specified grayscale level.

* FILRGN Same as FILLBOX, except ot restores the current gray level after filling.

* FILRGNC Fills a shape with the current gray level or color.

* GREST Calls the PostScript operator grestore.

* GRKSYM Plots a Greek symbol.

* GSAV Calls the PostScript operator gsave.

* HILITEC Prints text surrounded by a rectangular box (color).

* HILITEG Prints text surrounded by a rectangular box (grayscale).

* INTEGRAL Plots an integral with upper and lower limits.

* KEKEXP Plots a floating point number in exponential format.

* KEKFLT Plots a floating point number in floating point format.

* KEKNUM Plots a floating point number.

* KEKSYM Plots a character string.

* KEKSYMC Plots a character string, with the text string being chararacter rather than Hollerith.

* KEKSYMO Plots a character string with the characters outlined instead of filled.

* LENSTR Computes the number of characters in a character string.

* NEWDEV Specifies the name of the output PostScript file.

* NUMBER Plots a floating point number. Similar to KEKNUM,but justification and continuation are not supported.

* ONEHLF Draws the symbol ½.

* OVERBAR Draws a character string with an overbar.

* OVERSBSP Draws an overbar over a subscripted and superscripted character string.

* OVERSBSPG Draws an overbar over a subscripted and superscripted Greek symbol.

* OVERSUB Draws an overbar over a subscripted character string.

* OVERSUBG Draws an overbar over a subscripted Greek symbol.

* OVERSUP Draws an overbar over a superscripted character string.

* OVERSUPG Draws an overbar over a superscripted Greek symbol.

* OVRGRK Draws an overbar over a Greek symbol.

* PLOT Directs "pen" movement to a specified (x,y) point with the "pen" either up or down.

* PLOTND Closes the output PostScript file and terminates the plotting session.

* PLSMIN Draws the ± character.

* PRIME Draws the ' character.

* PSINIT Called to begin a plotting session. It also specifies portrait or landscape mode.

* RECT Draws a rectangle.

* RECTFILC Draws a rectangle and fills it with specified red, green, and blue color levels.

* RECTFILG Draws a rectangle and fills it with specified gray level.

* ROTATE Rotates the current coordinate system by a specified angle. Essentially, ROTATE issues the PostScript rotate command.

* RRECT Draws a rectangle with rounded corners. It can then fill the rectangle with the current graylevel or RGB values.

* SETCOLR Sets the current color values.

* SETFNT Sets the current font.

* SETGRY Sets the current gray level value.

* SETLW Sets the current line width.

* SIGMA Draws the symbol , with upper and lower limits.

* SLDCRV Connects data points with a solid curve.

* SLDLIN Draws a solid line between two points.

* SQRSGN Draws the radical (square root) sign.

* SQUARE Draws a square.

* STROKE Calls the PostScript operator stroke.

* SUBBER Draws a subscript.

* SUBBERSP Draws a subscript of "special" characters.

* SUBSUP Draws a subscript and superscript.

* SUBSUPSP Draws subscripts and superscripts of "special" characters.

* SUPER Draws a superscript.

* SUPERSP Draws a superscript of "special" characters.

* SYMBOL Plots a character string. Similar to KEKSYM, but justification and continuation are not supported.

The plotting subroutines in the PSPLOT plotting library are written in Fortran 77 and are called by user-written application programs. In the following subroutine descriptions, integer variables are denoted by arguments beginning with the letters I-N, as per Fortran convention, and are considered to be INTEGER*4. All other variables are real (4 byte) floating point. All of the subroutines are written in single precision. Hence, if your program generates data in double precision, any arguments sent to the plotting library subroutines must first be converted to single precision.


ARC code example back
to listing top

PURPOSE: ARC draws an arc having a specified radius and arc center.

SYNTAX: CALL ARC (XC, YC, RAD, ANG1, ANG2)

ARGUMENTS:

XC, YC X,Y coordinates of the center of the arc.

RAD Radius of arc.

ANG1 Angle of arc beginning.

ANG2 Angle of arc ending.


AROHED code example back
to listing top

PURPOSE: AROHED draws an arrowhead at a specified location.

SYNTAX: CALL AROHED (XPP, YPP, DIR, AROLNP, SPRANG, LOCXY )

ARGUMENTS:

XPP,YPP X,Y coordinates of the tip of the arrowhead.

DIR Direction of arrowhead, measured east from north.

AROLNP Length of arrowhead sides.

SPRANG Half the angular spread of arrowhead.

LOCXY Location of arrowhead point

LOCXY=1 XPP,YPP at arrowhead point (most commonly used)

LOCXY=2 XPP, YPP at center of arrowhead.

LOCXY=3 XPP,YPP at tail of arrowhead.


ARROW code example back
to listing top

PURPOSE: ARROW draws an arrow, with vector length, at a specified location.

SYNTAX: CALL ARROW (XSS, YSS, XPP, YPP, AROLNP, SPRANG, LOCXY )

ARGUMENTS:

XSS,YSS X,Y coordinates of the vector length origin.

XPP,YPP X,Y coordinates of the tip of the arrowhead.

AROLNP Length of arrowhead sides.

SPRANG Half the angular spread of arrowhead.

LOCXY Location of arrowhead point

LOCXY=1 XPP,YPP at arrowhead point (most commonly used)

LOCXY=2 XPP, YPP at center of arrowhead.

LOCXY=3 XPP,YPP at tail of arrowhead.


AXIS code example back
to listing top

PURPOSE: AXIS draws an axis of a graph, with user-specified axis titles. Tick marks are drawn with a spacing of one inch.

SYNTAX: CALL AXIS (XPP, YPP, IBCD, NC, AXLEN, THETA, RMIN, DEL)

ARGUMENTS:

XPP,YPP X,Y coordinates of axis origin.

IBCD Axis title (Hollerith).

NC Number of characters in title. Its sign is used to specify on which side of the axis the title is to appear: positive for the counterclockwise side of the axis, negative for the clockwise side. Positive labeling is generally used for Y axes, negative for X axes.

AXLEN Length of axis.

THETA Angle of axis. Generally, 0 for X axes, 90 for Y axes.

RMIN The starting value and annotation of the first tick mark.

DEL The data value increment between tick marks.


BLKSTP back
to listing top

PURPOSE: BLKSTP strips out embedded blanks in a character string. It returns the new character string and the number of characters in the new string.

SYNTAX: CALL BLKSTP (STR1, NDIM, STR2, NC)

ARGUMENTS:

STR1 Input character string.

NDIM Maximum length of STR1 as stated in calling program.

STR2 Output character string with embedded blanks removed.

NC Number of characters in STR2.


BORDER code example back
to listing top

PURPOSE: BORDER draws a rectangular border with tick marks. The lower left corner of the border is located at the current plot origin.

SYNTAX: CALL BORDER (XLEN, YLEN, ITIC, IBRD, MAJX, MINX, MAJY, MINY)

ARGUMENTS:

XLEN Length of x-direction side of border.

YLEN Length of y-direction side of border.

ITIC Four digit number which determines which of the border sides will contain tick marks. Each of the digits is either 0 or 1, and if set to 1, that side will contain tick marks. The border sides are ordered as follows:

Left-vertical Bottom Right-vertical Top

For example, if ITIC = 1011, all sides except the bottom would contain tick marks. Additionally, if ITIC<0, the tick marks will be drawn on the outside of the border than on the inside (default).

IBRD IBRD is similar to ITIC except that it determines which sides of the border will be drawn. Hence, you can have tick marks with no border, and vice versa.

MAJX Number of major divisions in the x-direction. A longer tick mark is drawn for these divisions.

MINX Number of minor divisions in the x-direction, i.e. the number of divisions per major division. A shorter tick mark is drawn for these divisions.

MAJY Same as MAJX in y-direction.

MINY Same as MINX in y-direction.


CHOPIT back
to listing top

PURPOSE: CHOPIT logically closes the current graphics page and begins a new one.

SYNTAX: CALL CHOPIT (XPP, YPP)

ARGUMENTS:

XPP,YPP X,Y coordinates of the initial plot origin of the next plot. This allows you to begin all plots at the same origin on each page.

Note: XPP and YPP are coordinates independent of the current scaling factor. That is, XPP and YPP represent actual inches, not scaled coordinates. The current scaling factor is reinstated after the new coordinate origin is set.

Subroutine CHOPIT should not be confused with subroutine PLOTND, which is called once at the end of each plotting session and which closes the entire output PostScript file.


CIRCLE code example back
to listing top

PURPOSE: CIRCLE draws a circle.

SYNTAX: CALL CIRCLE (XC, YC, RAD, FILL)

ARGUMENTS:

XC,YC X,Y coordinates of the center of the circle.

RAD Radius of the circle.

FILL Logical value. If FILL=.TRUE., circle is filled with the current color or gray scale; otherwise it is outlined.


CLIP back
to listing top

PURPOSE: CLIP inserts the PostScript command clip into the output file.

SYNTAX: CALL CLIP

ARGUMENTS:

NONE.

Note: Most uses of this command are bracketed by calls to GSAV and GREST.


CLIPBOX code example back
to listing top

PURPOSE: CLIPBOX defines a clipping region.

SYNTAX: CALL CLIPBOX (XPTS, YPTS, NPTS)

ARGUMENTS:

XPTS Array containing x-coordinates of region path.

YPTS Array containing y-coordinates of region path.

NPTS Number of points in region path.


COLBOX back
to listing top

PURPOSE: COLBOX fills a region with a specified color.

SYNTAX: CALL COLBOX (XPTS, YPTS, NPTS, RED, GREEN, BLUE)

ARGUMENTS:

XPTS Array containing x-coordinates of region path.

YPTS Array containing y-coordinates of region path.

NPTS Number of points in region path.

RED Red value of specified color in RGB color model.

GREEN Green value of specified color in RGB color model.

BLUE Blue value of specified color in RGB color model.

ARGUMENTS RED, GREEN, and BLUE must lie between 0. and 1.0, inclusive.


CONCOLR back
to listing top

PURPOSE: CONCOLR draws color contour plots of a two-dimensional array of regularly spaced data.

SYNTAX: CALL CONCOLR (ARR, IMAX, IEXT, JEXT, XLEN, YLEN, CVAL,

COLOR, NVAL, IOFFP, SPVAL)

ARGUMENTS:

ARR Two-dimensional array containing regularly spaced data to be contoured. CONCOLR assumes ARR(1,1) is located at the lower left corner of the plot. Data points ARR(1,1) through ARR(IEXT,JEXT) are contoured in an area XLEN x YLEN.

IMAX The first dimension of ARR in the calling program.

IEXT Number of points in x-direction of ARR to be contoured.

JEXT Number of points in y-direction of ARR to be contoured.

XLEN X-direction length of plotting area.

YLEN Y-direction length of plotting area.

CVAL Array containing the values to be used for contour intervals (1 to NVAL). CVAL must be dimensioned with a dimension of at least 1. Unlike in subroutine CONREC, NVAL cannot equal 0.

COLOR Array dimensioned (3,NVAL) containing the red, green, and blue values for each of the contour levels. The red value is stored in (1,n), the green value in (2,n) and the blue value in (3,n), where n specifies the contour index corresponding to CVAL. Regions less than or equal to the corresponding contour value CVAL are filled with the corresponding RBG values.

NVAL Number of contour intervals. NVAL must be less than or equal to 100, and unlike in CONREC, NVAL cannot equal 0.

IOFFP Flag indicating that grid boxes whose vertices have the value SPVAL are to be ignored during contouring.

SPVAL Special value denoting which grid boxes are to be ignored during contouring.

See coding example for CONFILL.


CONFILL code example back
to listing top

PURPOSE: CONFILL draws grayscale contour plots of a two-dimensional array of regularly spaced data.

SYNTAX: CALL CONFILL(ARR, IMAX, IEXT, JEXT, XLEN, YLEN, CVAL,

GRYLEV, NVAL, IOFFP, SPVAL)

ARGUMENTS:

ARR Two-dimensional array containing regularly spaced data to be contoured. CONFILL assumes ARR(1,1) is located at the lower left corner of the plot. Data points ARR(1,1) through ARR(IEXT,JEXT) are contoured in an area XLEN x YLEN.

IMAX The first dimension of ARR in the calling program.

IEXT Number of points in x-direction of ARR to be contoured.

JEXT Number of points in y-direction of ARR to be contoured.

XLEN X-direction length of plotting area.

YLEN Y-direction length of plotting area.

CVAL Array containing the values to be used for contour intervals (1 to NVAL). CVAL must be dimensioned with a dimension of at least 1. Unlike subroutine CONREC, NVAL cannot equal 0.

GRYLEV Array dimensioned (NVAL) containing the grayscale values for each of the contour levels. Regions less than or equal to the corresponding contour value CVAL are filled with the corresponding grayscale values. Grayscale values range from 0. (black) to 1.0 (white).

NVAL Number of contour intervals. NVAL must be less than or equal to 100, and unlike in CONREC, NVAL cannot equal 0.

IOFFP Flag indicating that grid boxes whose vertices have the value SPVAL are to be ignored during contouring.

SPVAL Special value denoting which grid boxes are to be ignored during contouring.


CONREC code example back
to listing top

PURPOSE: CONREC draws contour plots of a two-dimensional array of regularly spaced data.

SYNTAX: CALL CONREC (ARR, IMAX, IEXT, JEXT, XLEN, YLEN, CVAL, NVAL)

ARGUMENTS:

ARR Two-dimensional array containing regularly spaced data to be contoured. CONREC assumes ARR(1,1) is located at the lower left corner of the plot. Data points ARR(1,1) through ARR(IEXT,JEXT) are contoured in an area XLEN x YLEN.

IMAX The first dimension of ARR in the calling program.

IEXT Number of points in x-direction of ARR to be contoured.

JEXT Number of points in y-direction of ARR to be contoured.

XLEN X-direction length of plotting area.

YLEN Y-direction length of plotting area.

CVAL Array containing the values to be used for contour intervals (1 to NVAL). CVAL must be dimensioned with a dimension of at least 1. If NVAL = 0, the individual contour values are automatically computed.

NVAL Number of contour intervals. If NVAL = 0, the number of contour intervals and the contour interval values are automatically calculated. This is helpful if the range of data values is not known beforehand. NVAL must be less than or equal to 100.

Special features of CONREC:

If NVAL < 0, only high and lows are plotted instead of contours.

Common block CONPAR is used to control various characteristics of the contour plot from the calling program. The variables in CONPAR are shown below, along with their default values:

COMMON/CONPAR/ ISPEC, IOFFP, SPVAL, ILEGG, ILABB, NHII,

NDECCN, NLBLL, LSCAL, LDASH, HGTLAB

ISPEC If 0, variables in CONPAR have no effect. Default = 0.

IOFFP If 1, you can specify regions not to contour by using SPVAL. Grid boxes with any corner values equal to SPVAL are not contoured. Default = 0.

SPVAL Special value to denote areas not to contour (usually set to 999.). Default = 0.

ILEGG If 0, legend below contour plot showing contour values, scale factors, etc. will not be printed. Default = 1.

ILABB If 0, contour labels are not plotted. Default = 1.

NHII If 0, H and L mark relative highs and lows, with the data value plotted underneath the symbol.

If > 0, values are plotted at each array point.

If < 0, neither of the above is done.

Default = 0.

NDECCN Number of digits to the right of the decimal point in the contour labels. Default = 1.

NLBLL Number of unlabeled contours between labelled contours. Default = 3.

LSCAL If LSCAL = 0, the contours are scaled such that 0 < labeled values < 100. If LSCAL = 1, the contours are not scaled, i.e. the contour values are the actual data values. Default = 0.

LDASH Specifies whether contours are solid (LDASH = 0) or dashed (LDASH NE 0). If LDASH is not equal to 0, then LDASH specifies the type of dash line to use to draw the contours. The numeric value of LDASH is the number of times the dashed pattern (solid line/blank space) is repeated per inch. Default= 0.

HGTLAB Specifies the height of contour labels. If HGTLAB=0, the height of the contours is .11 inches.


CURVE code example back
to listing top

PURPOSE: CURVE draws a curve between two points, given the beginning and ending curve slopes.

SYNTAX: CALL CURVE (X1, Y1, X2, Y2, X3, Y3, X4, Y4, CONTIN)

ARGUMENTS:

X1,Y1 X,Y coordinates of the beginning of the curve.

X2,Y2 X, Y coordinates specifying the beginning curve slope. The initial slope of the curve is given by (Y2-Y1)/(X2-X1).

X3,Y3 X,Y coordinates specifying the ending curve slope. The end slope of the curve is given by (Y4-Y3)/(X4-X3).

X4,Y4 X,Y coordinates of the endpoint of the curve.

CONTIN Logical value. If CONTIN=.false. then the curve drawn starts a newpath; otherwise, the curve is appended to the current path.

Note: The curve produced by CURVE is not automatically stroked.


DRWCRV code example back
to listing top

PURPOSE: DRWCRV draws a solid curve.

SYNTAX: CALL DRWCRV (XARR, YARR, NPTS, THK, CLOSER)

ARGUMENTS:

XARR Array containing the x-coordinates of the points to be connected.

YARR Array containing the y-coordinates of the points to be connected.

NPTS Number of points in the curve.

THK Thickness of the curve. If THK = 0., the current linewidth is used.

CLOSER Logical variable. If CLOSER = .TRUE., the last point in the data arrays is connected to the first point, i.e. the curve is closed; otherwise, the curve is open.


DRWTRI code example back
to listing top

PURPOSE: DRWTRI draws an equilateral triangle.

SYNTAX: CALL DRWTRI (XC, YC, SIDE, THK)

ARGUMENTS:

XC, YC X, Y coordinates of triangle center.

SIDE Length of triangle side.

THK Thickness of line used to draw the triangle. If THK = 0., the current line width is used.


DSHCRV code example back
to listing top

PURPOSE: DSHCRV connects points in two data arrays using a line with a specified dash pattern.

SYNTAX: CALL DSHCRV (XARR, YARR, NPTS, IDSHPN, THK)

ARGUMENTS:

XARR Array containing the x-coordinates of the points to be connected.

YARR Array containing the y-coordinates of the points to be connected.

NPTS Number of points in the curve.

IDSHPN Dashed pattern of the line used to connect the data points. IDSHPN is specified as the number of times the dashed pattern (solid line/blank space) is repeated per inch.

THK Thickness of the dashes in the curve. If THK = 0., the current line width is used.


DSHLIN code example back
to listing top

PURPOSE: DSHLIN connects two points using a line with a specified dash pattern.

SYNTAX: CALL DSHLIN (X1, Y1, X2, Y2, IDSHPN, THK)

ARGUMENTS:

X1,Y1 X,Y coordinates of first data point.

X2,Y2 X,Y coordinates of second data point.

IDSHPN Dashed pattern of the line used to connect the two data points. IDSHPN is specified as the number of times the dashed pattern (solid line/blank space) is repeated per inch.

THK Thickness of the dashes in the connecting line. If THK = 0., the current line width is used.


FACTOR back
to listing top

PURPOSE: FACTOR enlarges or reduces the size of a plot by a specified ratio.

SYNTAX: CALL FACTOR (FACT)

ARGUMENTS:

FACT The ratio of the desired plot size to the actual size. FACT must be a positive floating point number.

For example, to enlarge a plot to twice its normal size:

CALL FACTOR (2.0)


FAROHED code example back
to listing top

PURPOSE: FAROHED draws a "fancy" arrowhead at a specified location.

SYNTAX: CALL FAROHED (XPP, YPP, DIR, AROLNP, SPRANG, LOCXY, FILL)

ARGUMENTS:

XPP,YPP X,Y coordinates of the tip of the arrowhead.

DIR Direction of arrowhead, measured east from north.

AROLNP Length of arrowhead sides.

SPRANG Half the angular spread of arrowhead.

LOCXY Location of arrowhead point

LOCXY=1 XPP,YPP at arrowhead point (most commonly used)

LOCXY=2 XPP, YPP at center of arrowhead.

LOCXY=3 XPP,YPP at tail of arrowhead.

FILL Logical variable. If FILL= .TRUE., the arrowhead is filled; otherwise it is outlined.


FILLBOX code example back
to listing top

PURPOSE: FILLBOX fills a shape with a specified gray level.

SYNTAX: CALL FILLBOX (XARR, YARR, NPTS, GRY)

ARGUMENTS:

XARR Array containing the x-coordinates of the points forming the perimeter of the shape to fill.

YARR Array containing the y-coordinates of the points forming the perimeter of the shape to fill.

NPTS Number of points comprising the shape perimeter.

GRY Gray level of filled shape. GRY must lie between 0. (black) and 1. (white), inclusive.

Note: The current gray level remains at value GRY after exiting FILLBOX.


FILRGN code example back
to listing top

PURPOSE: FILRGN is the same as FILLBOX, except it restores the current gray level after filling.

SYNTAX: CALL FILRGN (XARR, YARR, NPTS, GRY)

ARGUMENTS:

XARR Array containing the X coordinates of the points forming the perimeter of the shape to fill.

YARR Array containing the Y coordinates of the points forming the perimeter of the shape to fill.

NPTS Number of points comprising the shape perimeter.

GRY Gray level of filled shape. GRY must lie between 0.(black) and 1. (white), inclusive.


FILRGNC back
to listing top

PURPOSE: FILRGNC fills a region with the current gray level or color.

SYNTAX: CALL FILRGNC (XARR, YARR, NPTS)

ARGUMENTS:

XARR Array containing the X coordinates of the points forming the perimeter of the shape shape to fill.

YARR Array containing the Y coordinates of the points forming the perimeter of the shape to fill.

NPTS Number of points comprising the shape perimeter.


GREST back
to listing top

PURPOSE: GREST calls the PostScript operator grestore. It is useful after establishing and using a clipping region when it is no longer needed.

SYNTAX: CALL GREST

ARGUMENTS:

NONE

GREST is used to restore the graphics state of a PostScript page. It is called after a clipping region has been established and is no longer needed. GREST is used in conjunction with GSAV.


GRKSYM code example back
to listing top

PURPOSE: GRKSYM plots a Greek symbol.

SYNTAX: CALL GRKSYM (XPP, YPP, HEIGHT, ICH, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the Greek symbol to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of Greek symbol to be plotted.

ICH Integer value between 1 and 50 corresponding to the desired Greek symbol (see table below).

ANG Angle, measured counterclockwise from the X-axis, at which the character is to be plotted.

NCHAR Number of characters to be plotted (should be set to 1).

MJUS Controls the justification of the character to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the plotted character.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the plotted character.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the plotted character.


GSAV back
to listing top

PURPOSE: GSAV calls the PostScript operator gsave. It is useful before establishing and using a clipping region.

SYNTAX: CALL GSAV

ARGUMENTS:

NONE

GSAV is used to save the graphics state of the PostScript page prior to defining a clipping region. After the clipping region is used, GREST is called to restore the original graphics state.


HILITEC back
to listing top

PURPOSE: HILITEC prints text surrounded by a rectangular box (color).

SYNTAX: CALL HILITEC (XPP, YPP, HEIGHT, CSTR, ANG, EDG, JUSX, JUSY, FRED, FGREEN, FBLUE, BRED, BGREEN, BBLUE)

ARGUMENTS:

XPP,YPP X,Y coordinates of the box surrounding the text.

HEIGHT Height of text to be plotted.

CSTR Character string text to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the text is to be plotted.

EDG Fraction of the text height to use as an edge border.

JUSX Justification in the x-direction.

JUSX=0 is left justification.

JUSX=1 is centered.

JUSX=2 is right justification.

JUSY Similar to JUSX, but in the y-direction.

JUSY=0 is bottom justification.

JUSY=1 is centered.

JUSY=2 is top justification.

FRED, FGREEN, FBLUE Foreground text RGB values. Must lie between 0. and 1.0, inclusive.

BRED, BGREEN, BBLUE Background box RGB values. Must lie between 0. and 1.0, inclusive.

See code example for HILITEG.


HILITEG code example back
to listing top

PURPOSE: HILITEG prints text surrounded by a rectangular box (grayscale).

SYNTAX: CALL HILITEG (XPP, YPP, HEIGHT, CSTR, ANG, EDG, JUSX, JUSY, FGRY, BGRY)

ARGUMENTS:

XPP,YPP X,Y coordinates of the box surrounding the text.

HEIGHT Height of text to be plotted.

CSTR Character string text to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the text is to be plotted.

EDG Fraction of the text height to use as an edge border.

JUSX Justification in the x-direction.

JUSX=0 is left justification.

JUSX=1 is centered.

JUSX=2 is right justification.

JUSY Similar to JUSX, but in the y-direction.

JUSY=0 is bottom justification.

JUSY=1 is centered.

JUSY=2 is top justification.

FGRY Graylevel of the (foreground) text. FGRY must lie between 0. and 1.0, inclusive.

BGRY Graylevel of the (background) surrounding box. BGRY must lie between 0. and 1.0, inclusive.


INTEGRAL code example back
to listing top

PURPOSE: INTEGRAL plots an integral with upper and lower limits.

SYNTAX: CALL INTEGRAL (XPP, YPP, HEIGHT, ANG, LOWER, NL, LUPPER, NU)

ARGUMENTS:

XPP,YPP X,Y coordinates of the lower left edge of the integral.

HEIGHT Height of the integral.

ANG Angle, measured counterclockwise from the X-axis, at which the integral is plotted.

LOWER Character string of the lower limit (Hollerith).

NL Number of characters in the lower limit text.

LUPPER Character string of the upper limit (Hollerith).

NU Number of characters in the upper limit text.


KEKEXP code example back
to listing top

PURPOSE: KEKEXP plots a floating point number in exponential format.

SYNTAX: CALL KEKEXP (XPP, YPP, HEIGHT, FNUM, ANG, NDEC, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the number to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation

HEIGHT Height of number to be plotted.

FNUM Floating point number to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the number is to be plotted.

NDEC Controls the plotted precision of FNUM.

If NDEC > 0, it specifies the number of digits to the right of the decimal point, after rounding.

If NDEC = 0, only the number's integer portion and a decimal point are plotted, after rounding.

If NDEC = -1, only the number's integer portion is plotted, after rounding.

MJUS Controls the justification of the number to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the plotted number.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the plotted number.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the plotted number.


KEKFLT back
to listing top

PURPOSE: KEKFLT is the same as KEKNUM.

SYNTAX: CALL KEKFLT (XPP, YPP, HEIGHT, FNUM, ANG, NDEC, MJUS)

ARGUMENTS:

Same as KEKNUM.


KEKNUM code example back
to listing top

PURPOSE: KEKNUM plots a floating point number in floating point format.

SYNTAX: CALL KEKNUM (XPP, YPP, HEIGHT, FNUM, ANG, NDEC, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the number to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of number to be plotted.

FNUM Floating point number to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the number is to be plotted.

NDEC Controls the plotted precision of FNUM.

If NDEC > 0, it specifies the number of digits to the right of the decimal point, after rounding.

If NDEC = 0, only the number's integer portion and a decimal point are plotted, after rounding.

If NDEC = -1, only the number's integer portion is plotted, after rounding.

MJUS Controls the justification of the number to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the plotted number.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the plotted number.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the plotted number.


KEKSYM code example back
to listing top

PURPOSE: KEKSYM plots a character string.

SYNTAX: CALL KEKSYM (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

Special feature of KEKSYM:

You can plot special characters, for example the characters in fonts Symbol and Zapf Dingbats, by setting NCHAR=-999 and IBCD equal to the octal code of the character you want to plot.


KEKSYMC back
to listing top

PURPOSE: KEKSYMC plots a character string. Same as KEKSYM, but text is input as a character string rather than Hollerith.

SYNTAX: CALL KEKSYMC (XPP, YPP, HEIGHT, CSTR, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

CSTR Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

Special feature of KEKSYMC:

You can plot special characters, for example the characters in fonts Symbol and Zapf Dingbats, by setting NCHAR=-999 and CSTR equal to the octal code of the character you want to plot. CSTR must be in single quotes.


KEKSYMO code example back
to listing top

PURPOSE: KEKSYMO plots a character string; however, the characters are outlined rather than filled (solid).

SYNTAX: CALL KEKSYMO (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

Special feature of KEKSYMO:

You can plot special characters, for example the characters in fonts Symbol and Zapf Dingbats, by setting NCHAR=-999 and IBCD equal to the octal code of the character you want to plot.


LENSTR back
to listing top

PURPOSE: LENSTR is a function whose returned value is the number of characters in the character string argument after trailing blanks have been removed.

SYNTAX: LS = LENSTR(STRING, NDIM)

ARGUMENTS:

STRING Character string variable.

NDIM Maximum length of STRING as stated in calling program.

LS Returned length of the character string STRING after trailing blanks have been removed.


NEWDEV back
to listing top

PURPOSE: NEWDEV specifies a non-default filename which will contain the application program's output PostScript plot file.

SYNTAX: CALL NEWDEV (FLNAME, NCHAR)

ARGUMENTS:

FLNAME Character string or FORTRAN character variable which contains the name of the output Postscript file.

NCHAR Number of characters in the filename.

For example,

CALL NEWDEV ('MYPLOT.DAT', 10)

NEWDEV is called only once per plotting session and must be called prior to PSINIT. If NEWDEV is not called, the name of the output PostScript file is psplot.ps.


NUMBER back
to listing top

PURPOSE: NUMBER is the same as KEKNUM with left justification.

SYNTAX: CALL NUMBER (XPP, YPP, HEIGHT, FNUM, ANG, NDEC)

ARGUMENTS:

Same as KEKNUM.


ONEHLF back
to listing top

PURPOSE: ONEHLF plots the symbol ½ .

SYNTAX: CALL ONEHLF (XPP, YPP, HEIGHT, ANG, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the symbol to be plotted.

HEIGHT Height of symbol to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.


OVERBAR code example back
to listing top

PURPOSE: OVERBAR plots a character string with an overbar.

SYNTAX: CALL OVERBAR (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of number to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.


OVERSBSP code example back
to listing top

PURPOSE: OVERSBSP plots a subscripted and superscripted character string with an overbar. The overbar extends to cover both the subscripts and superscripts.

SYNTAX: CALL OVERSBSP (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR, MJUS,ISUB,

NSUB, ISUP, NSUP)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

ISUB Hollerith character(s) comprising the subscript.

NSUB Number of characters in the subscript string.

ISUP Hollerith character(s) comprising the superscript.

NSUP Number of characters in the superscript string.


OVERSBSPG code example back
to listing top

PURPOSE: OVERSBSPG plots a subscripted and superscripted Greek symbol with an overbar. The overbar extends to cover both the subscripts and superscripts.

SYNTAX: CALL OVERSBSPG (XPP, YPP, HEIGHT, ICH, ANG, CHAR, MJUS,

ISUB, NSUB, ISUP, NSUP)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of symbol to be plotted.

ICH Integer value between 1 and 50 corresponding to the desired Greek symbol (see table below Subroutine GRKSYM).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot (should be set to 1).

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

ISUB Hollerith character(s) comprising the subscript.

NSUB Number of characters in the subscript string.

ISUP Hollerith character(s) comprising the superscript.

NSUP Number of characters in the superscript string.


OVERSUB code example back
to listing top

PURPOSE: OVERSUB plots a subscripted character string with an overbar. The overbar extends to cover the subscripts.

SYNTAX: CALL OVERSUB (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR, MJUS,

ISUB, NSUB)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

ISUB Hollerith character(s) comprising the subscript.

NSUB Number of characters in the subscript string.


OVERSUBG code example back
to listing top

PURPOSE: OVERSUBG plots a subscripted Greek symbol with an overbar. The overbar extends to cover the subscript.

SYNTAX: CALL OVERSUBG(XPP, YPP, HEIGHT, ICH, ANG, NCHAR, MJUS,ISUB,

NSUB)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of the Greek symbol to be plotted.

ICH Integer value between 1 and 50 corresponding to the desired Greek symbol (see table below Subroutine GRKSYM).

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

NCHAR Number of characters in the string to plot (should be set to 1).

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the symbol.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the symbol.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the symbol.

ISUB Hollerith character(s) comprising the subscript.

NSUB Number of characters in the subscript string.


OVERSUP code example back
to listing top

PURPOSE: OVERSUP plots a superscripted character string with an overbar. The overbar extends to cover the subscript.

SYNTAX: CALL OVERSUP (XPP, YPP, HEIGHT, ICH, ANG, NCHAR,

MJUS,ISUP, NSUP)

ARGUMENTS:

XPP,YPP X,Y coordinates of the character string to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string to plot.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character string.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character string.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character string.

ISUP Hollerith character(s) comprising the superscript.

NSUP Number of characters in the superscript string.


OVERSUPG code example back
to listing top

PURPOSE: OVERSUPG plots a subscripted Greek character with an overbar. The overbar extends to cover the superscript.

SYNTAX: CALL OVERSUPG(XPP, YPP, HEIGHT, ICH, ANG, NCHAR, MJUS,

ISUP, NSUP)

ARGUMENTS:

XPP,YPP X,Y coordinates of the Greek symbol to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of the Greek symbol to be plotted.

ICH Integer value between 1 and 50 corresponding to the desired Greek symbol (see table below Subroutine GRKSYM).

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

NCHAR Number of characters in the string to plot (should be set to 1).

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the symbol.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the symbol.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the symbol.

ISUP Hollerith character(s) comprising the superscript.

NSUP Number of characters in the superscript string.


OVRGRK code example back
to listing top

PURPOSE: OVRGRK plots a Greek symbol with an overbar.

SYNTAX: CALL OVRGRK (XPP, YPP, HEIGHT, ICH, ANG, NCHAR, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the Greek symbol to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of symbol to be plotted.

ICH Integer value between 1 and 50 corresponding to the desired Greek symbol (see table below Subroutine GRKSYM).

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

NCHAR Number of characters in the string to plot (should be set to 1).

MJUS Controls the justification of the symbol to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the symbol.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the symbol.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the symbol.


PLOT code example back
to listing top

PURPOSE: PLOT is the most fundamental user-level plotting command. It gives you direct control of pen movement (to any X,Y coordinate position) and pen status (up or down). Additionally, it allows you to re-define the current plotting origin.

SYNTAX: CALL PLOT (XPP, YPP, IPEN)

ARGUMENTS:

XPP,YPP X,Y coordinates of the position to which the pen is to be moved. An origin may be established anywhere on or off the plotting surface, as explained below for negative IPEN values.

IPEN A signed integer which controls pen status (up/down) and origin definition.

If IPEN = 2, the pen is down during movement, thus drawing a visible line.

If IPEN = 3, the pen is up during movement, thus changing the pen's current position only.

If IPEN = -2 or -3, a new origin is defined at the position (XPP,YPP) after the movement is completed as if IPEN were positive. The logical X,Y coordinates of the new pen position are set to (0,0), so that all subsequent pen movements use this position as a reference point.

If IPEN = 999, the call to PLOT closes the output file. Thus, a call to PLOT with IPEN = 999 may be used only once in a given plotting session, and if used, must be the last plotting command in the plotting session. Calling PLOT with IPEN = 999 is identical to calling PLOTND (which see).


PLOTND back
to listing top

PURPOSE: PLOTND closes the output PostScript plot file to terminate the current plot defined by the user application program.

SYNTAX: CALL PLOTND

ARGUMENTS:

None

You must call PLOTND (or PLOT ( 0., 0., 999) ) as the last plotting call in the application program.


PLSMIN code example back
to listing top

PURPOSE: PLSMIN plots the symbol ±.

SYNTAX: CALL PLSMIN (XPP, YPP, HEIGHT, ANG, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the symbol to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of symbol to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

MJUS Controls the justification of the character string to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character.


PRIME code example back
to listing top

PURPOSE: PRIME plots the symbol ' .

SYNTAX: CALL PRIME (XPP, YPP, HEIGHT, ANG, MJUS)

ARGUMENTS:

XPP,YPP X,Y coordinates of the symbol to be plotted. Plotting may be continued from the end of a previously plotted character when used in conjunction with any of the subroutines which support continuation.

HEIGHT Height of symbol to be plotted.

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

MJUS Controls the justification of the symbol to be plotted.

If MJUS = 0, (XPP,YPP) denotes the position of the lower left corner of the character.

If MJUS = 1, (XPP,YPP) denotes the position of the center of the character.

If MJUS = 2, (XPP,YPP) denotes the position of the lower right corner of the character.


PSINIT back
to listing top

PURPOSE: PSINIT is called to begin a plotting session. It must be called before any other plotting command, with the exception of NEWDEV.

SYNTAX: CALL PSINIT (PRTRT)

ARGUMENTS:

PRTRT Logical variable indicating the paper orientation. If PRTRT=.TRUE., the paper is oriented in portrait mode, i.e. long side of page is vertical. If PRTRT=.false., the paper is oriented in landscape mode, i.e. long side of page is horizontal.


RECT code example back
to listing top

PURPOSE: RECT draws a rectangle (or square).

SYNTAX: CALL RECT (XX1, YY1, XX2, YY2, HEIGHT)

ARGUMENTS:

XX1,YY1 X,Y coordinates of lower left corner of rectangle.

XX2,YY2 X,Y coordinates of lower right corner of rectangle.

HEIGHT Height of rectangle.


RECTFILC back
to listing top

PURPOSE: RECTFILC draws a rectangle (or square) and fills it with a specified red, green, and blue color levels.

SYNTAX: CALL RECTFILC( XX1, YY1, XX2, YY2, HEIGHT, RED, GREEN BLUE)

ARGUMENTS:

XX1,YY1 X,Y coordinates of lower left corner of rectangle.

XX2,YY2 X,Y coordinates of lower right corner of rectangle.

HEIGHT Height of rectangle.

RED, GREEN, BLUE RGB values of the fill color. Must lie between 0. and 1., inclusively.


RECTFILG code example back
to listing top

PURPOSE: RECTFILG draws a rectangle (or square) and fills it with a specified graylevel.

SYNTAX: CALL RECTFILG (XX1, YY1, XX2, YY2, HEIGHT, GRYLEV)

ARGUMENTS:

XX1,YY1 X,Y coordinates of lower left corner of rectangle.

XX2,YY2 X,Y coordinates of lower right corner of rectangle.

HEIGHT Height of rectangle.

GRYLEV Graylevel to use for filling rectangle. GRYLEV must lie beween 0. (black) and 1. (white), inclusive.


ROTATE back
to listing top

PURPOSE: ROTATE rotates the current coordinate system by a specified angle. Essentially, ROTATE issues the PostScript rotate command.

SYNTAX: CALL ROTATE ( ANG )

ARGUMENTS:

ANGLE Angle, measured counterclockwise, to rotate the current coordinate system.


RRECT code example back
to listing top

PURPOSE: RRECT draws a rectangle (or square).with rounded corners. It can then fill the rectangle with the current graylevel or RGB values.

SYNTAX: CALL RRECT (XX1, YY1, WIDTH, HEIGHT, RAD, ANG, FILL)

ARGUMENTS:

XX1,YY1 X,Y coordinates of lower left corner of rectangle.

WIDTH Width of rectangle.

HEIGHT Height of rectangle.

RAD Radius of rectangle corner curves.

ANG Angle of rectangle rotation.

FILL Logical value. If FILL=.true., then the rectangle is filled with the current graylevel or RGB values; otherwise, the rectangle is outlined.


SETCOLR back
to listing top

PURPOSE: SETCOLR sets the current red, green, and blue color levels.

SYNTAX: CALL SETCOLR (RED, GREEN, BLUE)

ARGUMENTS:

RED Red color saturation level, between 0. and 1.0.

GREEN Green color saturation level, between 0. and 1.0.

BLUE Blue color saturation level, between 0. and 1.0.


SETFNT code example back
to listing top

PURPOSE: SETFNT sets the current font.

SYNTAX: CALL SETFNT (NFONT)

ARGUMENTS:

NFONT Number of desired font between 1 and 35 (see table below).

The fonts sets 29 (Symbol) and 35 (ZapfDingbats) require the octal code of the character to be plotted. Click the appropriate table to see the character sets and corresponding octal code values for these two fonts. Symbol ZapfDingbats


SETGRY code example back
to listing top

PURPOSE: SETGRY sets the current gray level.

SYNTAX: CALL SETGRY (GRYLVL)

ARGUMENTS:

GRYLVL Gray level between 0. (black) and 1. (white).


SETLW code example back
to listing top

PURPOSE: SETLW sets the current linewidth.

SYNTAX: CALL SETLW (RLW)

ARGUMENTS:

RLW Line width.

After calling SETLW, RLW remains the current linewidth until SETLW is called again.


SIGMA code example back
to listing top

PURPOSE: SIGMA draws the symbol , with upper and lower limits.

SYNTAX: CALL SIGMA ( XPP, YPP, HEIGHT, ANG, LOWER, NL, LUPPER, NU)

ARGUMENTS:

XPP, YPP X, Y coordinates of the lower left edge of the symbol.

HEIGHT Height of the symbol.

ANG Angle, measured counterclockwise from the X-axis, at which the symbol is to be plotted.

LOWER Character string specifying the lower limit (Hollerith).

NL Number of characters in the lower limit character string.

LUPPER Character string specifying the upper limit (Hollerith).

NU Number of characters in the upper limit character string.

If NL (NU) is set to -999, then LOWER (LUPPER) is the octal code of the character in the font SYMBOL.


SLDCRV code example back
to listing top

PURPOSE: SLDCRV connects points in two data arrays using a line with a specified thickness.

SYNTAX: CALL SLDCRV (XARR, YARR, NPTS, THK)

ARGUMENTS:

XARR Array containing the X coordinates of the data points to be plotted.

YARR Array containing the Y coordinates of the data points to be plotted.

NPTS Number of points in the curve.

THK Specifies the thickness of the curve. If THK = 0., the current linewidth is used.


SLDLIN code example back
to listing top

PURPOSE: SLDLIN connects two points using a line with a specified thickness.

SYNTAX: CALL SLDLIN (X1, Y1, X2, Y2, THK)

ARGUMENTS:

X1,Y1 X,Y coordinates of first data point.

X2,Y2 X,Y coordinates of second data point.

THK Specifies the thickness of the connecting line. If THK=0., the current linewidth is used.


SQRSGN code example back
to listing top

PURPOSE: SQRSGN draws a radical (square root) sign.

SYNTAX: CALL SQRSGN (XPP, YPP, HEIGHT, RLEN)

ARGUMENTS:

XPP,YPP X,Y coordinates of lower left corner of the radical.

HEIGHT Height of the radical.

RLEN Length of the top of the radical.


SQUARE code example back
to listing top

PURPOSE: SQUARE draws a centered square.

SYNTAX: CALL SQUARE (XC, YC, SIDE)

ARGUMENTS:

XC,YC X,Y coordinates of the center of the square.

SIDE Length of the sides of the square.


STROKE back
to listing top

PURPOSE: STROKE calls the PostScript operator stroke (which paints or draws the current path).

SYNTAX: CALL STROKE

ARGUMENTS:

None


SUBBER code example back
to listing top

PURPOSE: SUBBER draws a subscript.

SYNTAX: CALL SUBBER (ISUB, NSUB, SIZE, ANG)

ARGUMENTS:

ISUB Hollerith variable specifying the subscript character string.

NSUB Number of characters in the subscript.

SIZE Height of the variable to be subscripted. It is not the height of the subscript characters themselves.

ANG Angle of the subscripted variable.

Note: SUBBER must be called immediately after the call to create the subscripted variable.


SUBBERSP code example back
to listing top

PURPOSE: SUBBERSP draws a subscript of "special" characters.

SYNTAX: CALL SUBBERSP (NSET, NFNT, ITITLE, NCHR, HEIGHT, ANG

ARGUMENTS:

NSET Number of different font sets needed.

NFNT Array holding the font numbers 1 to NSET.

ITITLE ITITLE holds the octal codes for characters of fonts 29 or 35; otherwise, it hold the text characters themselves.

NCHR Number of characters of a given font. Usually one, but can be greater than one for fonts other than 29 and 35.

HEIGHT Height of the variable to be subscripted. It is not the height of the subscript characters themselves.

ANG Angle of the subscripted variable.

Note: SUBBERSP must be called immediately after the call to create the subscripted variable.


SUBSUP code example back
to listing top

PURPOSE: SUBSUP draws a subscript and superscript.

SYNTAX: CALL SUBSUP (ISUB, NSUB, ISUP, NSUP, SIZE, ANG)

ARGUMENTS:

ISUB Hollerith variable specifying the subscript character string.

NSUB Number of characters in the subscript.

ISUP Hollerith variable specifying the superscript character string.

NSUP Number of characters in the superscript.

SIZE Height of the variable to be subscripted and superscripted. It is not the height of the subscript and superscript characters themselves.

ANG Angle of the subscripted and superscripted variable.

Note: SUBSUP must be called immediately after the call to create the subscripted and superscripted variable.


SUBSUPSP code example back
to listing top

PURPOSE: SUBSUPSP draws subscripts and superscripts of "special" characters.

SYNTAX: CALL SUBSUPSP (NSUB, NFNTSB, ITITLESB, NCHRSB, NSUP,

NFNTSP,ITITLESP, NCHRSP, HEIGHT, ANG)

ARGUMENTS:

NSUB, NSUP Number of different font sets needed for subscripts and superscripts, respectively.

NFNTSB, NFNTSP Arrays holding the font numbers 1 to NSET for subscripts and superscripts, respectively.

ITITLESB, ITITLESP Arrays holding the octal codes for characters of fonts 29 or 35; otherwise, holding text characters themselves.

NCHRSB, NCHRSP Number of characters of a given font for subscripts and superscripts, respectively. Usually one, but can be greater than one for fonts other than 29 and 35.

HEIGHT Height of the variable to be subscripted. It is not the height of the subscript characters themselves.

ANG Angle of the subscripted variable.

Note: SUBSUPSP must be called immediately after the call to create the subscripted variable.


SUPER code example back
to listing top

PURPOSE: SUPER draws a superscript.

SYNTAX: CALL SUPER (ISUP, NSUP, SIZE, ANG)

ARGUMENTS:

ISUP Hollerith variable specifying the superscript character string.

NSUP Number of characters in the superscript.

SIZE Height of the variable to be superscripted. It is not the height of the subscript characters themselves.

ANG Angle of the superscripted variable.

Note: SUPER must be called immediately after the call to create the superscripted variable.


SUPERSP code example back
to listing top

PURPOSE: SUPERSP draws a superscript of "special" characters.

SYNTAX: CALL SUPERSP (NSET, NFNT, ITITLE, NCHR, HEIGHT, ANG)

ARGUMENTS:

NSET Number of different font sets needed.

NFNT Array holding the font numbers 1 to NSET.

ITITLE ITITLE holds the octal codes for characters of fonts 29 or 35; otherwise, it hold the text characters themselves.

NCHR Number of characters of a given font. Usually one, but can be greater than one for fonts other than 29 and 35.

HEIGHT Height of the variable to be superscripted. It is not the height of the superscript characters themselves.

ANG Angle of the superscripted variable.

Note: SUPERSP must be called immediately after the call to create the superscripted variable.


SYMBOL code example back
to listing top

PURPOSE: SYMBOL plots a character string. It is similar to subroutine KEKSYM, except that justification and continuation are not supported.

SYNTAX: CALL SYMBOL (XPP, YPP, HEIGHT, IBCD, ANG, NCHAR)

ARGUMENTS:

XPP,YPP X,Y coordinates of the lower left corner of the first character of the string to be plotted.

HEIGHT Height of character string to be plotted.

IBCD Character string to be plotted (Hollerith).

ANG Angle, measured counterclockwise from the X-axis, at which the character string is to be plotted.

NCHAR Number of characters in the string.


<==== PSPLOT home page