Previous: pltlvp Up: ../plot79_p.html Next: pltlx3
SUBROUTINE PLTLX (X,Y,TITLE,NCHAR,SIZE,THETA,VSTART,DECSIZ, X TICK,MODE) C$ (Draw Labelled and Numbered Logarithmic Axis) C$ This routine provides for the drawing of a logarithmic axis C$ with optional labelling and numbering. To maintain space C$ for labelling, one will normally call PLTLX with (X,Y) at C$ one of the corners of an inner frame about one inch inside C$ the page frame. If coordinates are in inches on a 8.5 x 11 C$ inch horizontal page, SIZE = 9.0 or 6.5 inches is C$ appropriate. If PLTGA or PLTGP is used to plot the graph, C$ the plot subwindow should be reset to a box of the size set C$ by the axis lengths in order for the scales to correspond C$ correctly to the plotted data points. All lettering is C$ done with routine SYMTXB which can simulate a thick pen of C$ a diameter settable by a call to SYMPD; this can be used to C$ enhance the letter quality if desired. It also supports C$ subscripts, superscripts, kerning, and changes of font, C$ style, and color. C$ C$ The arguments are: C$ C$ (X,Y).....Point from which axis originates. C$ C$ TITLE.....Hollerith label for the axis. This is always C$ drawn centered along the axis in the direction C$ away from (X,Y). Very long titles will be drawn C$ with smaller characters in order to fit on one C$ line. leading and trailing blanks are C$ automatically ignored for the purposes of C$ centering. The special character sequence "$N" C$ or "$n" (dollar N) in the string represents a C$ newline, and may be used to request multi-line C$ text. For example, the string C$ C$ "title 1$Ntitle 2$ntitle3" C$ C$ will generate three lines of the form C$ C$ title 1 C$ title 2 C$ title 3 C$ C$ In the unlikely event that "$N" is actually C$ needed in the text, it can be obtained by C$ bracketing either character with case switch C$ characters. With the default <PLOT79> case C$ switch characters, this would be $<N> or <$>N. C$ C$ NCHAR.... .GT. 0 - Number of characters in TITLE(*). C$ Normal plot symbols will be used. C$ .LE. 0 - No title to be drawn. C$ C$ SIZE......Length of the axis in world units. C$ C$ THETA.....Counterclockwise angle of inclination of axis in C$ degrees. C$ C$ VSTART....Starting value of variable along axis. If it is C$ not an integral power of ten, a partial decade C$ will be drawn, so that the starting value will C$ actually be VSTART, rather than the closest C$ multiple of ten. C$ C$ DECSIZ....Number of world units/decade. C$ C$ TICK..... .GT. 0.0 - Length of tick marks C$ above (counterclockwise from) the C$ axis. C$ .EQ. 0.0 - No tick marks to be drawn. C$ .LT. 0.0 - Length of tick marks below C$ (clockwise from) the axis. C$ A usual value will be TICK = 0.015 on the unit C$ square, but choosing TICK equal to the length of C$ the perpendicular axes will form a grid. C$ C$ MODE......Option flags stored in the low-order bits of the C$ integer value. These are selected by adding one C$ or more of the following option values, and then C$ setting the sign of the resulting sum to select C$ numbering and titling above (+) or below (-) the C$ axis. C$ C$ 1 - Number the axis. Even values of MODE C$ suppress numbering, but still affect the C$ choice of tick mark spacing. C$ 2 - Numbering perpendicular (i.e. rotated -90 C$ degrees) to the axis; otherwise it is C$ parallel to the axis. C$ 4 - Omit the first number along the axis. This C$ can be useful to prevent text overlap when C$ more than one axis is drawn from a point. C$ 8 - Omit the last number along the axis. C$ C$ Any value outside the legal range -15..+15 will C$ raise an error condition. The usual choice for a C$ numbered left vertical (Y) axis will be MODE = C$ +3, and for a numbered lower horizontal (X) axis C$ will be MODE = -1. The usual choice for an C$ unnumbered right vertical axis will be MODE = +2 C$ or -2, and for an unnumbered upper horizontal C$ axis will be MODE = 0. C$ C$ The sizes and positions of number labels, even if C$ they are not drawn, affect the choice of where C$ longer tick marks are drawn. In the common case C$ where the four sides of a graph have axes, but C$ two are unnumbered, for the unnumbered axes, C$ simply subtract 1 from the unsigned MODE value C$ used for the opposite numbered axis. C$ C$ (18-Feb-1991)