Hi @ballardw. Thank you for your quick response. We have tried sgplot and are able to get the two decimal places in every segments of the bars. However, we are having another problem now. How do we fully utilize the empty area(green highlighted) between the chart and legend? The legend will not even show if we increase either height, thickness or valueattrs=(size=7pt).
Thanks a lot.
ods graphics on / width=60 in height=45 in noborder;
Proc sgplot data=temp noautolegend pad=(top=1%);
vbar flag / group=subgrp response=percent seglabel seglabelformat=f6.2 grouporder=data;
legenditem type=line name="0" / lineattrs=(pattern=solid thickness=3) lineattrs=GraphData1 label="Legend 1";
legenditem type=line name="1" / lineattrs=(pattern=solid thickness=3) lineattrs=GraphData2 label="Legend 2";
legenditem type=line name="2" / lineattrs=(pattern=solid thickness=3) lineattrs=GraphData3 label="Legend 3";
legenditem type=line name="3" / lineattrs=(pattern=solid thickness=3) lineattrs=GraphData4 label="Legend 4";
.......... up to
legenditem type=line name="8" / lineattrs=(pattern=solid thickness=3) lineattrs=GraphData8 label="Legend 8";
keylegend "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" / location=outside position=bottomleft
title=" " across=3 down=3 valueattrs=(size=7pt) fillaspect=golden linelength=20 noborder;
xaxis label=" " values=(1,2,3,4,5,6,7,8,9,10) valueattrs=(size=7pt)
valuesdisplay=(
"1st (&c1.)"
"2nd (&c2.)"
"3rd (&c3.)"
"4th (&c4.)"
"5th (&c5.)"
"6th (&c6.)"
"7th (&c7.)"
"8th (&c8.)"
"9th (&c9.)"
"10th (&c10.)");
yaxis label=" "
values = (0 to 100 by 10) valuesdisplay=("0%" "10%" "20%" "30%" "40%" "50%" "60%" "70%" "80%" "90%" "100%");
run;
... View more