Data visualization with SAS programming

Plotting a Rate on the Y-Axis

New Contributor
Posts: 3

Plotting a Rate on the Y-Axis


I would like to create a plot where I have categories in the x-axis (e.g. race, region, etc.) and the rate of an event (e.g. death,) of a binary response variable on the y-axis.

To me this almost seems like plotting the row percent for the "event occured" column in na Rx2 frequency table.

If anyone can give me some guidance on how to best go about this, I would really appreciate it.


Super User
Posts: 21,464

Re: Plotting a Rate on the Y-Axis

Posted in reply to rhysticlight

It partly depends on what version of SAS you have. Depending on your data you may want to add a group variable, but again hard to comment without knowing exactly what your data looks like.

Here's my 9.2 solution that uses proc freq to get my percentages and then uses VBAR.

proc freq data=sashelp.class;

table sex*age/out=summary1 outpct;


data graph_data;

    set summary1;

    where sex='F';

    keep sex age pct_col;


    format pct_col percent8.1;


proc sgplot data=graph_data;

vbar age /stat=sum response=pct_col;

run; quit;

New Contributor
Posts: 3

Re: Plotting a Rate on the Y-Axis

Thank you so much for your help! I am using SAS 9.3 so I will give that a try and see how it goes.

I basically have a variable age that I have grouped into ranges using a format statement, and I would like to have a plot of age group on the x-axis vs. mortality rate in that group on the y-axis. So my code for producing a frequency table (without output) would look something like:

proc freq data=work.temp;

     tables age*dead_yn;

     format age age_groups.;


I will give this a try and let you know how it works out!

Ask a Question
Discussion stats
  • 2 replies
  • 2 in conversation