Graphics Programming

Data visualization using SAS programming, including ODS Graphics and SAS/GRAPH. Charts, plots, maps, and more!
BookmarkSubscribeRSS Feed
kalbaugh
Calcite | Level 5

I'm trying to get the 'number at risk' (n in my code below) using xaxistable on my sgplot figure. However, I was expecting the 'n' to be aligned with the x axis timepoints (0, 6, 12, 18, 24, 30, and 36). Instead, the n is showing up at every timepoint where there is an actual change. So there are many more 'n' on the figure than needed - and not the ones I want. Does anyone know how to get the 'n' for your predefined x axis timepoints? My code is below. Figure is attached.

 

proc sgplot data=b11 ;

step x=fuptime y=s/group=trivex name='s' ;

xaxistable n / x=fuptime class=trivex location=outside colorgroup=trivex separator

;

 

styleattrs

datacontrastcolors=(black gray)

datalinepatterns=(solid);

format trivex trivex.;

yaxis values=(0.5 to 1.0 by 0.1);

xaxis values=(0 to 36 by 6);

yaxis label="Proportion of Patients with No Ulcer Recurrence (%)";

 

label fuptime=Length of Follow-Up (Months);

label trivex=Phlebectomy;

 

keylegend 's';

run;

4 REPLIES 4
arodriguez
Lapis Lazuli | Level 10

You could edit your dataset to delete n content when timepoint is not in your list.

Reeza
Super User

Yes, I would recommend editing the data. Use timelist option in proc lifetest to limit data. 

Jay54
Meteorite | Level 14

Suggestions by Reeza and Rodriguez are in the right direction.  See the SAS 9.4 (last) example in the Survival Plot article.  While the Step plot uses X=TIME, the xaxistable uses the optional X=TATRISK.  See the data set shown in the article.  TATRISK has non-missing values only at 0, 500, 1000 and so on, so the ATRISK values are shown only where TATRISK is non-missing.  Full program is provided in a link at the bottom of the article.

kalbaugh
Calcite | Level 5

Thanks everyone! Huge help.

All the best,

Corey

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

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
  • 4 replies
  • 2306 views
  • 3 likes
  • 4 in conversation