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

I want to order the bars in the bar chart, based on my own order, not by the default order. Is there a way to do it?

 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
BrunoMueller
SAS Super FREQ

Hi have a look at the VALUES= option of the XAXIS statement.

 

Find below a code sample:

proc sgplot data=sashelp.cars tmplout="c:/temp/sgplot.sas";
  vbar type / response=Horsepower stat=mean;
  xaxis values=("SUV" "Hybrid" "Wagon" "Truck");
run;

Bruno

View solution in original post

3 REPLIES 3
Rick_SAS
SAS Super FREQ

Yes. Sort the data set so that the categories appear i nthe order you want. Then use the XAXIS DISCRETEORDER=DATA option to tell the plot to use the order of the categories as they appear in the data set:

 

proc sgplot data=sashelp.cars;

vbar Type;

xaxis discreteorder=data;

run;

 

 

For more elaborate examples, see the article "Order variables by values of a statistic"

BrunoMueller
SAS Super FREQ

Hi have a look at the VALUES= option of the XAXIS statement.

 

Find below a code sample:

proc sgplot data=sashelp.cars tmplout="c:/temp/sgplot.sas";
  vbar type / response=Horsepower stat=mean;
  xaxis values=("SUV" "Hybrid" "Wagon" "Truck");
run;

Bruno

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


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