Hi Ballardw,
Just for closure, I thought I'd give you an update... I used your suggestion plus did something quick and dirty which got the results I needed, but it ain't pretty! Sometime I may go back and do this right, but for now it works and I can move on. Below is the end program that gives me what I want. Thanks again for your help!
/* Set the graphics environment */
goptions reset=all cback=white border htitle=12pt htext=10pt;
/* Create sample data for forest plot. */
data test;
input yvar $ 1-3 Tlowercl Trate Tuppercl Plowercl Prate Puppercl;
datalines;
UT 16.97 18.54 20.10 14.44 15.85 17.25
VA 14.78 16.19 17.60 13.93 15.55 17.18
VT 13.90 16.23 18.56 13.92 15.69 17.46
WA 15.98 17.63 19.29 16.21 18.31 20.41
WI 14.02 14.92 15.81 13.54 14.91 16.28
WV 14.72 15.37 16.03 14.88 17.19 19.51
WY 15.75 16.97 18.19 14.74 16.04 17.34
;
run;
data newtest (keep=yvar rate ratetype Tlowercl Tuppercl Plowercl Puppercl);
set test;
rate=trate;ratetype="T";output;
rate=prate;ratetype="P";output;
run;
/* Create an annotate data set to draw the lines for CL. */
data Tanno;
length function style color $8;
retain xsys ysys '2' when 'a';
set newtest;
/* Draw the horizontal line from lower_limit to upper_limit */
function='move'; xsys='2'; ysys='2'; yc=yvar; x=Tlowercl; color='blue'; output;
function='draw'; x=Tuppercl; color='blue'; size=1; output;
/* Draw the tick line for the lower_limit value */
function='move';xsys='2'; ysys='2';yc=yvar; x=Tlowercl; color='blue'; output;
function='draw';x=Tlowercl; ysys='9'; y=+1; size=1; output;
function='draw';x=Tlowercl; y=-2; size=1;output;
/* Draw the tick line for the upper_limit value */
function='move';xsys='2'; ysys='2'; yc=yvar; x=Tuppercl; color='blue'; output;
function='draw';x=Tuppercl; ysys='9'; y=+1; size=1; output;
function='draw';x=Tuppercl; y=-2; size=1; output;
run;
/* Create an annotate data set to draw the lines for CL. */
data Panno;
length function style color $8;
retain xsys ysys '2' when 'a';
set newtest;
/* Draw the horizontal line from lower_limit to upper_limit */
function='move'; xsys='2'; ysys='2'; yc=yvar; x=Plowercl; color='orange'; output;
function='draw'; x=Puppercl; color='orange'; size=1; output;
/* Draw the tick line for the lower_limit value */
function='move';xsys='2'; ysys='2';yc=yvar; x=Plowercl; color='orange'; output;
function='draw';x=Plowercl; ysys='9'; y=+1; size=1; output;
function='draw';x=Plowercl; y=-2; size=1;output;
/* Draw the tick line for the upper_limit value */
function='move';xsys='2'; ysys='2'; yc=yvar; x=Puppercl; color='orange'; output;
function='draw';x=Puppercl; ysys='9'; y=+1; size=1; output;
function='draw';x=Puppercl; y=-2; size=1; output;
run;
title1 'State CL for PT-Math';
axis1 label=none
minor=none
offset=(.1,.10);
axis2 order=(0 to 50 by 5)
label=('%Time spent in Subject')
minor=none;
symbol1 interpol=none color=orange value=dot height=1.5;
symbol2 interpol=none color=blue value=dot height=1.5;
symbol3 interpol=none color=orange value=dot height=1.5;
symbol4 interpol=none color=blue value=dot height=1.5;
proc gplot data=newtest;
plot yvar*rate=ratetype / annotate = Tanno haxis=axis2 vaxis=axis1;
plot2 yvar*rate=ratetype / annotate = Panno haxis=axis2 vaxis=axis1 nolable;
run;
quit;