BookmarkSubscribeRSS Feed
Whitlea
Obsidian | Level 7

SAS v 9.3

I am trying to generate a simple sgplot with percentages.  I want to be able to add multiple variables on the vbar statement but that is not an option. I have I am also having trouble creating a data set from my proc freq that includes ALL of my variables. 

data work.ins15;

set ins.ins15;

run;

 

proc freq data=work.ins15;

tables cig ecig chew / plots=FreqPlot(scale=Percent) out=Freq1Out; /* save Percent variable */

weight _cpwt;

where cig=1 and ecig=1 and chew=1;

run;

data Freq1Out;

set Freq1Out ;

Percent = Percent / 100; /* adjust range to [0, 1] */

format Percent PERCENT5.;

run;

title "";

proc sgplot data=Freq1Out noborder;

vbar cig / response=Percent datalabel

fillattrs=(color=blue); /* axis shows percentages instead of counts */

xaxis display=(nolabel);

yaxis display=(nolabel) ;

run;

1 REPLY 1
pink_poodle
Barite | Level 11

For outputting multiple variables in frequency tables, please use multiple table statements. Similarly, to add multiple variables on a vertical bar graph, please try using multiple vbar statements. Please see also this post:

https://communities.sas.com/t5/Graphics-Programming/sgplot-with-Multiple-variables-on-vbar/td-p/3887...

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 3634 views
  • 1 like
  • 2 in conversation