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 2025: Call for Content

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!

Submit your idea!

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 1816 views
  • 3 likes
  • 4 in conversation