Data visualization with SAS programming

KM plot. use vertical line as symbol

Reply
Contributor
Posts: 24

KM plot. use vertical line as symbol

as is traditional in a KM plot (step plot) the symbol for a censored value is a ¦ (vertical line). every example Ive seen in GTL uses a symbol of plus as there doesnt seem to be an appropriate symbol and unlike old versions I cant use a capital i. My example below uses a + too and it doesnt look quite right.

stepplot x=_x y=_surv / group=signvar lineattrs=(pattern=solid) name='s';

scatterplot x=_x y=_cens / markerattrs=(symbol=plus) GROUP=signvar  ;

SGRender12.png

SAS Super FREQ
Posts: 1,044

Re: KM plot. use vertical line as symbol

You have two option.  With SAS 9.4M1, you can use any character from a font as a symbol using the SYMBOLCHAR statement.  With Unicode fonts, your choices are huge.  Pre SAS 9.4M1, you can use the SCATTERPLOT with MARKERCHARACTER option to draw the vertical bar "|" at each location.

Respected Advisor
Posts: 3,107

Re: KM plot. use vertical line as symbol

Sanjay,

Thank you for coming and the autograph. Great talk in BUG. Hope you had a pleasant trip!

Haikuo

SAS Super FREQ
Posts: 1,044

Re: KM plot. use vertical line as symbol

It was my pleasure meeting all the BUGS attendees. 

Contributor
Posts: 24

Re: KM plot. use vertical line as symbol

Hi Sanjay

Im using 9.3 and using the scatterplot/markerchar. however it doesnt give me the option to use a vertical bar "|", only the ones in the standard ones.

unless Im doing something wrong with my scatter?

scatterplot x=_x y=_cens / markerattrs=(symbol=plus) GROUP=signvar  ;

Thanks

Adie

Contributor
Posts: 24

Re: KM plot. use vertical line as symbol

after all this...my boss has changed his mind and the "plus" is now acceptable!

Thanks anyway!

SAS Super FREQ
Posts: 1,044

Re: KM plot. use vertical line as symbol

OK.  But if you still need to do something similar later, here is what you do.  First, add a new column (censor) to your data and populate it with the character(s) you want to display in the graph.. In this case, put a "|" where ever you want the display the censor observation.  Then use the scatterplot with same X and Y variables and the option markercharacter=censor.  Keep the length of this variable (or format) as small as possible to avoid any leading blanks.

Post a Question
Discussion Stats
  • 6 replies
  • 493 views
  • 0 likes
  • 3 in conversation