I have a dataset I am trying to annotate to a PROC GCHART graphic. The annotation data ranges from 0-100% for a stacked bar graph containing two subgroups. Whenever there is a 0% present the annotated data does not display on the graph. Everything else displays fine.
It works just fine when all values are above 0%. My question is, how do I get annotated values to display even if no value possible on the graph? Here is my annotation code:
data maddr;
set WORK.MONTHLY_ADDRESS_RESULTS;
retain xsys "2" ysys "2" position "E" /*color "white" /*outline "black"*/;
size=1.2;
style="/bold";
*%system(3,2);
when="a";
midpoint=Month;
subgroup=Type;
*y=20;
if Total = 0 then Total=0; else text=left(put(Total,percent8.1));
output;
run;
In a Gchart bar chart, if you're annotating things on the stacked bar segments (ie, subgroups), and if a subgroup has a value of zero (and the subgroup is not drawn on the chart), then how will annotate know where to draw that annotation?
You could perhaps modify the data a little, and if the value is 0, then make it slightly more than zero (like .00001) - then a tiny slivery of a segment would be created for it in the bar, and annotate would have something to annotate on.
But perhaps it would be best to re-think this, and use something other than a stacked bar chart.
In a Gchart bar chart, if you're annotating things on the stacked bar segments (ie, subgroups), and if a subgroup has a value of zero (and the subgroup is not drawn on the chart), then how will annotate know where to draw that annotation?
You could perhaps modify the data a little, and if the value is 0, then make it slightly more than zero (like .00001) - then a tiny slivery of a segment would be created for it in the bar, and annotate would have something to annotate on.
But perhaps it would be best to re-think this, and use something other than a stacked bar chart.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.