Create the Annotate data set, BARLABEL. The MIDPOINT variable uses the values of the chart variable CITY to provide the X coordinate for the subgroup labels. The SUBGROUP variable uses the values of the variable TYPE to provide the Y coordinate that vertically positions the labels in the bar. Because no function is specified, the data set uses the default function, LABEL. The POSITION value E places the labels just below the top of each subgroup bar.
data barlabel; length color style $ 8; retain color "white" when "a" style "arial" xsys ysys "2" position "E" size 4 hsys "3"; set sold; midpoint=city; subgroup=type; text=left(put(units,5.)); run;