Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
INSET Statement

Positioning the Inset Using Coordinates

You can also specify the position of the inset with coordinates: POSITION=(x,y). The coordinates can be given in axis percent units (the default) or in axis data units.

Data Unit Coordinates

If you specify the DATA option immediately following the coordinates, the inset is positioned using axis data units. Data units along the category axis (the horizontal axis on a vertical bar chart or the vertical axis on a horizontal bar chart) are based on category numbers. Categories are numbered from left to right (vertical bar chart) or top to bottom (horizontal bar chart), starting with 1.

For example, the following statements produce the Pareto chart displayed in Figure 28.7:

   proc pareto data=failure3;
      vbar cause / freq = counts
                   cframe   = ligr
                   cbars    = vigb
                   cconnect = salmon;
      inset n / header   = 'Position=(3,60)'
                position = (3,60) data
                cfill    = ywh
                ctext    = vigb
                height   = 3;
   run;
The bottom left corner of the inset is lined up with the tick mark for the third category on the horizontal axis and at 60 on the vertical axis. By default, the specified coordinates determine the position of the bottom left corner of the inset. You can change this reference point with the REFPOINT= option, as in the next example.

paridet2.gif (5354 bytes)

Figure 28.7: Inset Positioned Using Data Unit Coordinates

Axis Percent Unit Coordinates

If you do not use the DATA option, the inset is positioned using axis percent units. The coordinates of the bottom left corner of the display are (0,0), while the upper right corner is (100,100). For example, the following statements create a horizontal Pareto chart with two insets, both positioned using coordinates in axis percent units.

   proc pareto data=failure3;
      vbar cause / freq     = counts
                   maxncat  = 5
                   cframe   = ligr
                   cbars    = vigb
                   cconnect = salmon;
      inset n / position = (5,25)
                header   = 'Position=(5,25)'
                height   = 3
                cfill    = ywh
                ctext    = vigb
                refpoint = tl;
      inset nexcl / position = (95,95)
                    header   = 'Position=(95,95)'
                    height   = 3
                    cfill    = ywh
                    ctext    = vigb
                    refpoint = tr;
   run;

The display is shown in Figure 28.8. Notice that the REFPOINT= option is used to determine which corner of the inset is to be placed at the coordinates specified with the POSITION= option. The first inset has REFPOINT=TL, so the top left corner of the inset is positioned 5% of the way across the horizontal axis and 25% of the way up the vertical axis. The second inset has REFPOINT=TR, so the top right corner of the inset is positioned 95% of the way across the horizontal axis and 95% of the way up the vertical axis. Note also that coordinates in axis percent units must be between 0 and 100.

paridet3.gif (5480 bytes)

Figure 28.8: Inset Positioned Using Axis Percent Unit Coordinates

Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
Top
Top

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.