Previous Page | Next Page

SAS/GRAPH Statements

AXIS Statement



Controls the location, values, and appearance of the axes in plots and charts.
Used by: GBARLINE, GCHART, GCONTOUR, GRADAR, G3D procedures
Restriction: For the G3D procedure, the AXIS statement is supported by the JAVA and ActiveX devices only.
Type: Global

Syntax
Description
Options
Text Description Suboptions
Using Text Description Suboptions
Tick Mark Description Suboptions
Using the AXIS Statement
Assigning AXIS Definitions

Syntax

AXIS<1...99> <options>;

option(s) can be one or more options from any or all of the following categories:


Description

AXIS statements specify the following characteristics of an axis:

AXIS definitions are used only when they are explicitly assigned by an option in a procedure that produces graphs with axes.

Parts of Axes illustrates the terms associated with the various parts of axes.

Parts of Axes

[Parts of Axes]


Options

When the syntax of an option includes units, use one of these:

CELLS

character cells

CM

centimeters

IN

inches

PCT

percentage of the graphics output area

PT

points

If you omit units, a unit specification is searched for in this order:

  1. The GUNIT= option in a GOPTIONS statement

  2. the default unit, CELLS.

COLOR=axis-color

specifies the color for all axis components (the axis line, all tick marks, and all text) unless you include a more explicit AXIS statement color specification. The following table lists the SAS/GRAPH statement options that can be used to override the COLOR= specification. The table also lists the name of the style reference associated with each of the options.

Option Graph Element Style Reference
AXIS statement:

LABEL=

(COLOR=color)

axis label GraphLabelText
REFLABEL=

(COLOR=color)

reference-line labels
VALUE=

(COLOR=color)

major tick mark values GraphValueText
calling

procedure:



CTEXT= all axis text

(AXIS label and

major tick mark

value descriptions)

GraphLabelText
CAXIS= axis line and major

and minor tick

marks

GraphAxisLines

If you omit all color options, the AXIS statement looks for a color specification in this order:

  1. The CTEXT= graphics option in a GOPTIONS statement.

  2. If the CTEXT= option is not used, the color of all axis components is the color of the default style.

Alias: C=
Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values
INTERVAL=EVEN | UNEVEN | PARTIAL

The INTERVAL option affects the LOGBASE option in the AXIS statement. Specifying the option INTERVAL=UNEVEN and LOGBASE=10, permits non-base10 values to be specified for the ORDER option, while retaining a logarithmic scale for the axis.

Note:   PARTIAL is an alias for UNEVEN. They have the same effect.  [cautionend]

Restriction: Not supported by Java and ActiveX
LABEL=(text-argument(s)) | NONE

modifies an axis label. Text-argument(s) defines the appearance or the text of an axis label, or both. NONE suppresses the axis label. Text-argument(s) can be one or more of these:

"text-string"

provides up to 256 characters of label text. By default, the text of the axis label is either the variable name or a previously assigned variable label. Enclose each string in quotes. Separate multiple strings with blanks.

text-description-suboption

modifies a characteristic such as the font, color, or size of the text string(s) that follows it. Text-description-suboption can be

ANGLE=degrees

COLOR=text-color

FONT=font | NONE

HEIGHT=text-height <units >

JUSTIFY=LEFT | CENTER | RIGHT

ROTATE=degrees

See Text Description Suboptions for a complete description.

Specify as many text strings and text description suboptions as you want, but enclose them all in one set of parentheses.

Style Reference: Color attribute of the GraphLabelText style element
Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values, Example 2. Specifying Logarithmic Axes , and Example 7. Using BY-group Processing to Generate a Series of Charts
Restriction: Partially supported by Java and ActiveX.
LENGTH=axis length <units >

specifies the length of the axis in number of units. If you request a length that cannot fit the display, a warning message is written to the log and your graph may produce unexpected results.

This option is not supported by the GRADAR Procedure.

Style Reference: Color attribute of the GraphLabelText graph element.
Restriction: Not supported by Java.
Featured in: Example 2. Specifying Logarithmic Axes and Example 9. Combining Graphs and Reports in a Web Page .
LOGBASE=base | E | PI

scales the axis values logarithmically according to the value specified. Base must be greater than 1. The number of minor tick marks is a function of the logbase, and is calculated as the logbase minus 2. For example, if logbase=10, there are 8 minor tick marks. If logbase=2, then there are no minor tick marks. Because the value of logbase=e (2.718281828) is so close to 2, it also results in no minor tick marks. How the values are displayed on the axis depends on the LOGSTYLE= option. For example, LOGBASE=10 with the default LOGSTYLE=EXPAND generates an axis like the one in Axis Generated with LOGBASE=10 and LOGSTYLE=EXPAND.

Axis Generated with LOGBASE=10 and LOGSTYLE=EXPAND

[Axis Generated with LOGBASE=E and LOGSTYLE=EXPAND]

This option is not supported by the GRADAR Procedure.

Featured in: Example 2. Specifying Logarithmic Axes
Restriction: Not supported by Java
LOGSTYLE=EXPAND | POWER

specifies whether the values displayed on the logarithmic axis are the values of the base or the values of the power. LOGSTYLE= is meaningful only when you use LOGBASE=.

LOGSTYLE=EXPAND specifies that the values displayed are the values of the base raised to successive powers and that the minor tick marks are logarithmically placed. For example, if the base is 10, the values displayed are 10, 100, 1000, 10000, and so on. The default is LOGSTYLE=EXPAND. This statement generates an axis like the one in part (a) of Axes Generated with the LOGSTYLE=option:

axis logbase=10 logstyle=expand;

LOGSTYLE=POWER specifies that the values displayed are the powers to which the base is raised (for example, 1, 2, 3, 4, 5, and so on). For example, this statement generates an axis like the one in part (b) of Axes Generated with the LOGSTYLE=option:

axis logbase=10 logstyle=power;

Axes Generated with the LOGSTYLE=option

[Axis Generated with the LOGSTYLE= option]

If you use the ORDER= option with a logarithmic axis, the values specified by the ORDER= option must match the style specified by the LOGSTYLE= option. For example, if you specify a logarithmic axis with a base of 2 and you want to display the first five expanded values, use this statement:

axis logbase=2 logstyle=expand
     order=(2 4 8 16 32);

If you use LOGSTYLE=POWER, the values in the ORDER= option must represent the powers to which the base is raised, as in this example:

axis logbase=2 logstyle=power order=(1 2 3 4 5);

If the values that are specified by ORDER= do not match the type of values specified by LOGSTYLE=, the request for a logarithmic axis is ignored.

This option is not supported by the GRADAR Procedure.

Featured in: Example 2. Specifying Logarithmic Axes
Restriction: Not supported by Java
MAJOR=(tick-mark-suboption(s) ) | NONE

modifies the major tick marks. Tick-mark-suboption(s) defines the color, size, and number of the major tick marks. NONE suppresses all major tick marks, although the values represented by those tick marks are still displayed. Tick-mark-suboption can be

COLOR=tick-color

HEIGHT=tick-height <units >

NUMBER=number-of-ticks

WIDTH=thickness-factor

See Tick Mark Description Suboptions for complete descriptions. List all suboptions and their values within the parentheses.

AXIS definitions assigned to the group axis of a bar chart by the GAXIS= option ignore MAJOR= because the axis does not use tick marks.

Note:   By default, tick marks are now placed at three intervals on the spokes of a GRADAR chart. They are placed at the minimum value, maximum value, and at one value in between. The tick marks on the 12 o'clock spoke are also labeled by default.

HEIGHT is not supported by Java or ActiveX. WIDTH is not supported by Java.  [cautionend]

Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values , Example 2. Specifying Logarithmic Axes, and Example 7. Using BY-group Processing to Generate a Series of Charts
Restriction: Partially supported by Java and ActiveX
MINOR=(tick-mark-suboption(s) ) | NONE

modifies the minor tick marks that appear between major tick marks. Tick-mark-suboption(s) defines the color, number, or size of the minor tick marks. NONE suppresses all minor tick marks. Tick-mark-suboption can be

COLOR=tick-color

HEIGHT=tick-height <units >

NUMBER=number-of-ticks

WIDTH=thickness-factor

See Tick Mark Description Suboptions for complete descriptions. List all suboptions and their values within the parentheses.

AXIS definitions assigned to the group axis of a bar chart by the GAXIS= option ignore MINOR= because the axis does not use tick marks.

This option is not supported by the GRADAR Procedure.

HEIGHT is not supported by Java or ActiveX.

Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values, Example 2. Specifying Logarithmic Axes, and Example 7. Using BY-group Processing to Generate a Series of Charts
Restriction: Partially supported by Java and ActiveX
NOBRACKETS

suppresses the printing of group brackets drawn around the values on the group axis in a bar chart. NOBRACKETS applies only to the group axis of bar charts.

This option is not supported by the GRADAR Procedure.

See also: GROUP= and GAXIS=
Restriction: Not supported by Java and ActiveX
NOPLANE

removes either the horizontal or vertical three-dimensional axis plane in bar charts produced by the HBAR3D and VBAR3D statements. NOPLANE affects only the axis to which the AXIS statement applies.

To remove selected axis elements such as lines, values or labels, use specific AXIS statement options. To remove all axis elements except the three-dimensional planes use the NOAXIS option in the procedure. To remove the backplane, use the NOFRAME option in the procedure.

This option is not supported by the GRADAR Procedure.

Featured in: Example 7. Using BY-group Processing to Generate a Series of Charts.
OFFSET=(<n1><,n2>)<units > | (<n1<units>><,n2<units>>)

specifies the distance from the first and last major tick marks or bars to the ends of the axis line.

The value of (n1) is the distance from the beginning (origin) of the axis line to the first tick mark or middle of the first bar. The value of (n2) is the distance from the end of the axis line to the last tick mark or middle of the last bar.

On a horizontal axis, the (n1) offset is measured from the left end of the axis line and the (n2) offset is measured from the right end. On a vertical axis, the (n1) offset is measured up from the bottom of the axis line and the (n2) offset is measured down from the top of the line.

To specify the same offset for both n1 and n2, use one value, with or without a following comma. For example, either option sets both n1 and n2 to 4 centimeters:

offset=(4 cm)
offset=(4 cm,)

To specify different offsets, use two values, with or without a comma separating them. For example:

offset=(4 cm, 2 cm)

To specify only the second offset, use only one value preceded by a comma. This option offsets the last major tick mark or bar three centimeters from the right-hand end of the axis line:

offset=(,3 cm)

You can specify units for the n1,n2 pair or for the individual offset values.

This option is not supported by the GRADAR Procedure.

Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values
Restriction: Not supported by Java
ORDER=(value-list )

specifies the order in which data values appear on the axis. The values specified by the ORDER= option are the major tick mark values. You can modify the appearance of these values with the VALUE= option.

The way you specify value-list depends on the type of variable:

  • For numeric variables, value-list is either an explicit list of values or a starting and an ending value with an interval increment, or a combination of both forms:

    n <...n>

    n TO n <BY increment>

    n<...n> TO n <BY increment > <n <...n > >

    If a numeric variable has an associated format, the specified values must be the unformatted values.

    Values must be listed in either ascending or descending order. By default the increment value is 1. You can use a negative integer for increment to specify a value list in descending order. In all forms, multiple n values can be separated by blanks or commas. Here are some examples:

    order=(2 4 6)
    order=(6,4,2)
    order=(2 to 10 by 2)
    order=(50 to 10 by -5)

    If the specified range is not evenly divisible by the increment value, the highest value displayed on the axis is the last incremental value below the ending value for the range. For example, this value list produces a maximum axis value of 9:

    order=(0 to 10 by 3)
  • For character variables, value-list is a list of unique character values enclosed in quotes and separated by blanks:

    "value-1" <..."value-n">

    If a character variable has an associated format, the specified values must be the formatted values for PROC GCHART and the unformatted values for PROC GPLOT.

    Character values can be specified in any order, but the character strings must match exactly the variable values in case and spelling. For example,

    order=("Paris" "London" "Tokyo")

    Observations can be inadvertently excluded if entries in the value-list are misspelled or if the case does not match exactly.

  • For date and time values, value-list can have the following forms:

    "SAS-value"i <..."SAS-value"i>"

    "SAS-value"i TO "SAS-value"i <BY interval>

    "SAS-value"i

    is any SAS date, time, or datetime value described for the SAS functions INTCK and INTNX. Enclose the value in quotes and specify one of the following for i:

    D

    date

    T

    time

    DT

    datetime

    interval

    is one of the valid arguments for the INTCK or INTNX functions. These are the default intervals:

    DAY

    default interval for date

    SECOND

    default interval for time

    DTSECOND

    default interval for datetime

    These value lists use SAS date and time values:

    order=("25MAY98"d "04JUL98"d "07SEP98"d)
    order=("01JUL97"d to "01AUG97"d)
    order=("01JUL97"d to "01JAN98"d by week)
    order=("9:25"t to "11:25"t by minute)
    order=("04JUN97:12:00:00"dt to
           "10JUN97:12:00:00"dt by dtday)

    With SAS date and time values, use a FORMAT statement so that the tick mark values have an understandable form. For more information on SAS date and time values, see the SAS Language Reference: Dictionary.

With any type of value-list, specifying values that are not distributed uniformly or are not in ascending or descending order, generates a warning message in the SAS log. The specified values are spaced evenly along the axis even if the values are not distributed uniformly.

Using the ORDER= option to restrict the values displayed on the axis can result in clipping. For example, if the data range is 1 to 10 and you specify ORDER=(3 TO 5), only the data values from 3 to 5 appear on the plot or chart. For charts, the omitted values are still included in the statistic calculation.

Note:   Values out of range do not always produce a warning message in the SAS log.  [cautionend]

CAUTION:
The ORDER= option does not calculate midpoint values; as a result it is not interchangeable with the MIDPOINTS= option in the GCHART procedure.   [cautionend]

You can use the ORDER= option to specify the order in which the midpoints are displayed on a chart, but do not use it to calculate midpoint values. Make sure that the values you specify match the midpoint values that are calculated either by default by the GCHART procedure or by the MIDPOINTS= option. For details, see the description of the MIDPOINTS= option for the appropriate statement in The GCHART Procedure.

The ORDER= option overrides the suboption NUMBER= described in Tick Mark Description Suboptions.

The ORDER= option is not valid with the ASCENDING, DESCENDING, and NOZEROS options used with the bar chart statements in the GCHART procedure.

This option is not supported by the GRADAR procedure.

Note:   The Java applet supports the ORDER= option for numeric axes, but does not support the ORDER= option for categorical, character, midpoint, or group axes.

The ActiveX control supports only simple order lists. Non-uniform interval values, such as dates, are not supported. Only maximum and minimum values are supported with a default interval of one day.  [cautionend]

Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values, Example 5. Filling the Area between Plot Lines, and Example 7. Using BY-group Processing to Generate a Series of Charts
Restriction: Partially supported by Java and ActiveX
ORIGIN=(<x><,y>)<units> | (<x<units>><,y<units>>)

specifies the x coordinate and the y coordinate of the origin of the axis. The origin of the horizontal axis is the left end of the axis, and the origin of the vertical axis is the bottom of the axis. The ORIGIN= option explicitly positions the axis anywhere on the graphics output area.

If you specify only one value, with or without a comma following it, only the x coordinate is set to that value. For example, this specification sets x to 4 centimeters:

origin=(4 cm,)

If you specify two values, with or without a comma separating them, the first value sets the x coordinate and the second value sets the y coordinate:

origin=(2 pct, 4 pct)

If you specify one value preceded by a comma, only the y coordinate is set to that value, as shown here:

origin=(,3 pct)

You can specify units for the x,y pair or for the individual coordinates.

This option is not supported by the GRADAR Procedure.

Restriction: Not supported by Java and ActiveX
REFLABEL=(text-argument(s)) | NONE

creates and defines the appearance of a reference-line label. Text-argument(s) defines the appearance or the text of the label, or both. NONE suppresses the reference-line label. Text-argument(s) can be one or more of these:

"text-string"

provides up to 256 characters of label text. By default, a reference line does not have a label. Enclose each string in quotes. Separate multiple strings with blank spaces. The strings are applied to the reference lines specified by the VREF or HREF option.

text-description-suboption

modifies a characteristic such as the font, color, or size of the text string(s) that follows it. Text-description-suboption can be

ANGLE=degrees

AUTOREF

COLOR=text-color

FONT=font | NONE

HEIGHT=text-height <units >

JUSTIFY=LEFT | CENTER | RIGHT

POSITION=TOP| MIDDLE| BOTTOM

ROTATE=degrees

T=n

See Text Description Suboptions for a complete description.

Specify as many text strings and text description suboptions as you want, but enclose them all in one set of parentheses.

REFLABEL is not supported by the GRADAR Procedure.

Style Reference: Font and Color attributes of the GraphLabelText element
Restriction: Not supported by Java and ActiveX
STAGGER

offsets the axis values on a horizontal axis. This option is useful when values overlap on an axis. When specifying the Java and ActiveX devices, the STAGGER option must sometimes be used in conjunction with the ORDER statement.

SPLIT="split-char"

specifies the split character that the AXIS statement uses to break axis values into multiple lines. Split-char can be any character value that can be specified in a SAS character variable. The split character must be embedded in the variable values in the data set or in an associated format. When the AXIS statement encounters the split character, it automatically breaks the value at that point and continues on the next line. For example, suppose the data set contains the value Berlin, Germany , and you specify SPLIT=",". The value would appear on the axis as follows:

Berlin
Germany

Note that the split character itself is not displayed.

Axis values specified with VALUE= do not use the split character. For example, suppose you specify this statement:

axis1 split="," value=(tick=1 "December, 1999");

The value appears on the axis on one line as December, 1999 . However, any other axis values containing a comma honors the split character.

This option is not supported by the GRADAR Procedure.

Featured in: Example: Creating Bar Charts with Drill-Down for the Web
Restriction: Not supported by Java and ActiveX
STYLE=line-type

specifies a line type for the axis line. Valid values for line-type are 0 through 46. If you specify STYLE=0, the axis line is not drawn. The default is 1, a solid line.

Note:   In order for the axis line to be altered by the STYLE= option, the NOFRAME option must also be set. If only the STYLE=option is set, the axis frame is modified.  [cautionend]

Note:   See also: Line Types for examples of the available line types.  [cautionend]

Style Reference: Line style attribute of the GraphAxisLine element
VALUE=(text-argument(s) ) | NONE

modifies the major tick mark values. That is, this option modifies the text that labels the major tick marks on the axis. Text-argument(s) defines the appearance or the text of a major tick mark value, or both. NONE suppresses the major tick mark values, although the major tick marks are still displayed. Text-argument(s) can be one or more of these:

"text-string"

provides up to 256 characters of text for the major tick mark value. By default, the value is either the variable value or an associated format value. Enclose each string in quotes and separate multiple strings with blanks.

Specified text strings are assigned to major tick marks in order. If you specify only one text string, only the first tick mark value changes, and all the other tick mark values display the default. If you specify multiple strings, the first string is the value of the first major tick mark, the second string is the value of the second major tick mark, and so on. For example, to change default tick mark values 1, 2, and 3 to First , Second , and Third , use this option:

value=("First" "Second" "Third")

Note:   Although the VALUE= option changes the text displayed at a major tick mark, it does not affect the actual value represented by the tick mark. To change the tick mark values, use the ORDER= option. Also note that with the Java or ActiveX devices, it is necessary to use the ORDER= option to ensure that the same number of tick marks are displayed as are with graphics rendered with the other device drivers. For example, specify ORDER=(1 to 12) to ensure that tick marks for all twelve months are displayed.

To change the value of midpoints in bar charts produced with the GCHART procedure, use the MIDPOINTS= option in the procedure.  [cautionend]

text-description-suboption

modifies a characteristic such as the font, color, or size of the text string(s) that follows it. Text-description-suboption can be

ANGLE=degrees

COLOR=text-color

FONT=font | NONE

HEIGHT=text-height <units >

JUSTIFY=LEFT | CENTER | RIGHT

ROTATE=degrees

TICK=n.

For a complete description, see Text Description Suboptions.

Place text description suboptions before the text strings they modify. Suboptions not followed by a text string affect the default values. To specify and describe the text for individual values or to produce multi-line text, use the TICK= suboption.

Specify as many text strings and text description suboptions as you want, but enclose them all in one set of parentheses.

Note:   If an end user viewing a graph in the Java applet or ActiveX control zooms in on a particular part of a graph for which the VALUE= option is specified, the values are not readjusted in coordination with the zooming.  [cautionend]

Style Element: Color attribute of the GraphLabelText graph element
Featured in: Example 2. Specifying Logarithmic Axes, Example 7. Using BY-group Processing to Generate a Series of Charts, and Example 9. Combining Graphs and Reports in a Web Page
Restriction: Partially supported by Java
WIDTH=thickness-factor

specifies the thickness of the axis line. Thickness increases directly with the value of thickness-factor. By default, WIDTH=1.

Note:   In order for the axis line to be altered by the WIDTH= option, the NOFRAME option must also be set. If only the WIDTH=option is set, the axis frame is modified.

Java does not support the WIDTH option. ActiveX ignores the WIDTH option for the vertical axis of an AXIS statement with GPLOT and GCONTOUR.  [cautionend]

Style Reference: LineThickness attribute of the GraphAxisLines element
Featured in: Example 1. Ordering Axis Tick Marks with SAS Date Values
Restriction: Not supported by Java and partially supported by ActiveX

Text Description Suboptions

Text description suboptions are used by the LABEL=, REFLABEL=, and VALUE= options to change the color, height, justification, font, and angle of either default text or specified text strings. See the LABEL= option, the REFLABEL= option, and the VALUE= option.

ANGLE=degrees
A=degrees

specifies the angle of the baseline with respect to the horizontal. A positive value for degrees moves the baseline counterclockwise; a negative value moves it clockwise. By default, ANGLE=0 (horizontal) unless the text is automatically angled or rotated to avoid overlapping. .

Note:   Changing the angle of a vertical axis-label can result in the label being positioned above the graph when using the Java or ActiveX device drivers.  [cautionend]

Alias: A=
Restriction: Partially supported by Java
See also: the ROTATE= suboption
Featured in: Example: Creating Bar Charts with Drill-Down for the Web
AUTOREF

automatically labels each reference line on an axis with the response value at the reference line's position. The AUTOREF option is used only with the REFLABEL= option. The automatic labels are applied only to reference lines that do not have specific labels assigned to them. For example, the following option uses the response-axis value as the label for every reference line except the second reference line, which is assigned the label two:

reflabel=(autoref t=2 "two")

Note, however, that if you simultaneously request automatic labeling with a PLOT or BUBBLE statement (using the AUTOHREF or AUTOVREF option), then the automatic labeling can write on top of the custom label you specified using the AXIS statement. You must ensure that your custom labels specified using the AXIS statement are not at the same position as automatic labels requested with a different statement.

Restriction: Not supported by Java, ActiveX, and GIF
COLOR=text-color

specifies the color for the text. If you omit the COLOR= suboption, a color specification is searched for in this order:

  1. the CTEXT= option for the procedure

  2. the CTEXT= option in a GOPTIONS statement

  3. the color of the default style.

Alias: C=
FONT=font | NONE

specifies the font for the text. See Specifying Fonts in SAS/GRAPH Programs for details on specifying font. If you omit FONT=, a font specification is searched for in this order:

  1. the FTEXT= option in a GOPTIONS statement

  2. the default style font, NONE.

Alias: F=
Restriction: Partially supported by Java
HEIGHT=text-height <units >

specifies the height of the text characters in number of units. By default, HEIGHT=1 CELL. If you omit the HEIGHT= option, a text height specification is searched for in this order:

  1. the HTEXT= option in a GOPTIONS statement

  2. the default style value, 1.

Alias: H=
JUSTIFY=LEFT | CENTER | RIGHT

specifies the alignment of the text. The default depends on the option with which it is used and the text it applies to.

  • With the LABEL= option:

    • for a left vertical axis label, the default is JUSTIFY=RIGHT

    • for a right vertical axis label, the default is JUSTIFY=LEFT

    • for a horizontal axis label, the default is JUSTIFY=CENTER.

  • With the REFLABEL= option:

    • for a reference line that intersects a vertical axis, the default is JUSTIFY=CENTER. RIGHT places the text string on the right end of the line, CENTER places the text string in the middle of the line, and LEFTplaces the text string to the left of the line.

    • for a reference line that intersects a horizontal axis, the default is JUSTIFY=RIGHT for all procedures except the BAR statement in GBARLINE. For the BAR statement in GBARLINE the default is JUSTIFY=LEFT. RIGHT places the text string just to the right of the line, CENTER is centered on top of the line, and LEFT places the text string just to the left of the line.

  • With the VALUE= option:

    • for numeric variables on a vertical axis, the default is JUSTIFY=RIGHT

    • for character variables on a vertical axis, the default is JUSTIFY=LEFT

    • for all variables on a horizontal axis, the default is JUSTIFY=CENTER.

Note:   With output using Java and ActiveX, text justification is relative to the text string, not the tick mark. For example, left justification means that the left end of the text string is justified with respect to the drawing location, as well as other strings in a multiline label. Because the text is left justified with respect to the drawing location and not the tick mark, the text string can be placed to the right of a tick mark.  [cautionend]

You can use the JUSTIFY= option to print multiple lines of text by repeating the JUSTIFY= option before the text string for each line. You can also use JUSTIFY= to specify multi-line text at specified major tick marks. For example, this statement produces an axis label and major tick mark values like those shown in The JUSTIFY= suboption.

axis label=("Current" justify=c
            "Sales Projections")
     value=(tick=1 "JAN" justify=c "1997"
            tick=2 "FEB" justify=c "1997"
            tick=3 "MAR" justify=c "1997"
            tick=4 "APR" justify=c "1997"
            tick=5 "MAY" justify=c "1997");

The JUSTIFY= suboption

[The JUSTIFY= Suboption]

Specify additional suboptions before any string.

Alias: J=L | C | R
Restriction: Not supported by Java
See also: the suboption TICK=
POSITION=TOP | MIDDLE | BOTTOM

specifies the position of a reference-line label relative to the reference line. The default is TOP for both vertical and horizontal reference lines. The POSITION= option is available only on the REFLABEL= option.

  • For horizontal reference lines, TOP places the label just above the reference line, MIDDLE places the label on the reference line, and BOTTOM places the label just below the reference line.

  • For vertical reference lines, TOP places the label at the top end of the reference line, MIDDLE places the label in the middle of the line, and BOTTOM places the label at the bottom end of the line.

Restriction: Not supported by Java and ActiveX
ROTATE=degrees

specifies the angle at which each character of text is rotated with respect to the baseline of the text string. A positive value for degree rotates the character counterclockwise; a negative value moves it clockwise. By default, ROTATE=0 (parallel to the baseline) unless the text is automatically angled or rotated to avoid overlapping.

Alias: R=degrees
Restriction: Partially supported by Java
See also: the suboption ANGLE=
TICK=n

specifies the n reference line or tick mark value. Used only with the REFLABEL= option or the VALUE= option. If neither one is specified, then the TICK= option is ignored.

  • With the REFLABEL= option, the TICK= option specifies the nth reference line. It is used to limit modifications to individual reference lines when there are multiple reference lines on an axis. For example, the following option changes the color of only the third reference line's label and leaves all other reference-line labels unchanged:

    reflabel=(autoref t=3 color=red)
    Suboptions that precede the TICK= option affect all the reference-line labels on an axis. Suboptions that follow the TICK= option affect only the specified line's label. For example, the following option assigns the color green to all the reference-line labels on an axis, but left-justifies only the third reference line's label:
    reflabel(c=green "one" "two" t=3  j=left "three")
    For the options to be applied to a text string, they must precede the quoted string. In the following option, the j=left is ignored because it follows the string:
    reflabel(c=green "one" "two" t=3 "three" j=left)
  • Note:   The Java and ActiveX device drivers do not support the REFLABEL option.  [cautionend]

    With the VALUE= option, the TICK= option specifies the nth major tick mark value. It is used to designate the tick mark value whose text and appearance you want to modify. For example, the following option changes the color of only the third tick mark value and leaves all others unchanged:

    value=(tick=3 color=red)
    Suboptions that precede the TICK= option affect all the major tick mark values. Suboptions that follow the TICK= option affect only the specified value. For example, the following option makes all the major tick mark values four units high and colors all of them blue except for the third one, which is red:
    value=(height=4 color=blue tick=3 color=red)
Alias: T=n

Using Text Description Suboptions

Text description suboptions affect all the strings that follow them unless the suboption is changed or turned off. If the value of a suboption is changed, the new value affects all the text strings that follow it. Consider this example:

label=(font=swiss height=4 "Weight"
       justify=right height=3 "(in tons)")

FONT=SWISS applies to both Weight and (in tons ). HEIGHT=4 affects Weight , but is respecified as HEIGHT=3 for (in tons) . JUSTIFY=RIGHT affects only (in tons) .


Tick Mark Description Suboptions

Tick mark description suboptions are used by the MAJOR= and the MINOR= options to change the color, height, width, and number of the tick marks to which they apply. See the MAJOR= and MINOR= options.

COLOR=tick-mark-color

colors the tick marks. If you omit the COLOR= suboption, a color specification is searched for in this order:

  1. the COLOR= option in the AXIS statement

  2. the CAXIS= option for the procedure

  3. the color of the default style.

Alias: C=tick-mark color
HEIGHT=tick-height <units>

specifies the height of the tick mark. The defaults for the HEIGHT= suboption depend on the option with which it is used:

  • With the MAJOR= option the default height .5 CELLS.

  • With the MINOR= option the default height .25 CELLS.

If you specify a negative number, tick marks are drawn inside the axis.

Alias: H=tick-height <units>
Restriction: Not supported by Java and ActiveX.
NUMBER=number-of-ticks

specifies the number of tick marks to be drawn. With the MAJOR= option, number-of-ticks must be greater than 1. With the MINOR= option, number-of-ticks must be greater than 0.

With the MAJOR= option, the NUMBER= suboption can be overridden by a major tick mark specification in the procedure, which in turn can be overridden by the ORDER= option.

With the MINOR= option, the NUMBER= suboption can be overridden by a minor tick mark specification in the procedure.

The NUMBER= option is not valid with logarithmic axes.

Alias: N=number-of-ticks
WIDTH=thickness-factor

specifies the thickness of the tick mark, where thickness-factor is a number. Thickness increases directly with thickness-factor. By default, WIDTH=1.

Style Reference: LineThickness attribute of the GraphAxisLines element.
Alias: W=thickness-factor
Restriction: Partially supported by Java

Using the AXIS Statement

AXIS statements can be defined anywhere in your SAS program. They are global and remain in effect until redefined, canceled, or until the end of your SAS session. AXIS statements are not applied automatically, and must be explicitly assigned by an option in the procedure that uses them.

You can define up to 99 different AXIS statements. If you define two AXIS statements of the same number, the most recently defined statement replaces the previously defined statement of the same number. An AXIS statement without a number is treated as an AXIS1 statement.

Cancel individual AXIS statements by defining an AXIS statement of the same number without options (a null statement):

axis4;

Canceling one AXIS statement does not affect any other AXIS definitions. To cancel all current AXIS statements, use the RESET= option in a GOPTIONS statement:

goptions reset=axis;

Specifying RESET=GLOBAL or RESET=ALL cancels all current AXIS definitions as well as other settings.

To display a list of current AXIS definitions in the LOG window, use the GOPTIONS procedure with the AXIS option:

proc goptions axis nolist;
run;


Assigning AXIS Definitions

AXIS definitions must always be explicitly assigned by the appropriate option in the statement that generates the graph. The following table lists the procedures and statements that generate axes, the type of axis, and the statement option that assigns an AXIS definitions to that axis:

Procedure Statement that generates an axis Type of axis Option that assigns an AXIS definition
GBARLINE BAR | PLOT midpoint axis

response axis

MAXIS=

RAXIS=

GCHART HBAR | VBAR group axis

midpoint axis

response axis

GAXIS=

MAXIS=

RAXIS=

GCONTOUR PLOT horizontal axis

vertical axis

HAXIS=

VAXIS=

GPLOT PLOT horizontal axis

vertical axis

HAXIS=

VAXIS=

GRADAR CHART star axis STARAXIS=

Some types of axes cannot use certain AXIS statement options:

Previous Page | Next Page | Top of Page