BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
mariange8282
Obsidian | Level 7

Hi, I'm trying to to a VBOX PLOT. 

I have a data set like: I have 24 intervals, I1-I24

_LABEL_  COL1

I1             0

I1             4

I10           7

I10           7

I11          6

I11          5

....

I8            4

I8            6

I9            4

I9            5

I has to sort it to transpose my data. 

When I run:

 

 proc sgplot data=mergedt;
vbox COL1/ category=_LABEL_;
xaxis grid label="Interval" discreteorder=data;
yaxis grid label="XX";
run;

My plot in xaxis is I1 I10 I11 I12 .. I19 I2 20 I21 .. I24 I3 I4 ..I9

I need my xaxis like I1 I2 I3 I4 ..... I23 I24

 

I have try with discreteorder=format or unformart and it is the same result. Any idea to "unsort it" or have the xaxis in numeric order?

 

Thanks 

1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User

The typical solution is a custom format. Map each Label to a numeric variable that sorts correctly and then a format that maps to the variable you want displayed. 

 

Proc format;

value Icat

1= 'I1'

2='I2'

...

24='I24';

 

proc SGPLOT ...;

....

format label icat.;

run;quit;

View solution in original post

2 REPLIES 2
Reeza
Super User

The typical solution is a custom format. Map each Label to a numeric variable that sorts correctly and then a format that maps to the variable you want displayed. 

 

Proc format;

value Icat

1= 'I1'

2='I2'

...

24='I24';

 

proc SGPLOT ...;

....

format label icat.;

run;quit;

ballardw
Super User

Or use Proc Sort to sort the data with the SORTSEQ option Linguistic with Numeric_Collation=On

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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
  • 2 replies
  • 3010 views
  • 0 likes
  • 3 in conversation