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

Hi,

Should SGPLOT honor  DiscreteOrder= for a scatter plot?  I read the docs as saying yes, it should respect discreteorder for any plot that has a discrete axis.

But I seem to get DiscreteOrder=data no matter what, e.g.:

proc sort data=sashelp.class out=class;
   by descending name;
 run;
 proc sgplot data=class noautolegend;
  scatter x=name y=height / markerattrs=(symbol=diamondfilled) ;
 * vbox height/category=name;
  xaxis type=discrete discreteorder=unformatted;
 run;

When I use vbox, discreteorder is honored.

Maybe I'm just reading the docs wrong.  :

DISCRETEORDER= DATA | FORMATTED | UNFORMATTED
specifies the order in which discrete tick values are placed on the axis. Specify one of the following values:
DATA places the values in the order in which they appear in the data. 
FORMATTED sorts the formatted values in ascending character order. 
UNFORMATTED sorts the unformatted values in ascending character order. 
Default:UNFORMATTED 
Restriction:This option affects only box plots, dot plots, bar charts, and line plots, or for any axis where TYPE=DISCRETE. 

I read the restriction as suggesting DISCRETEORDER should be honored for a scatterplot  whent TYPE=Discrete.

Not a big problem, cuz I can just sort the data.  But wanted to ask.

Thanks,

--Q.


BASUG is hosting free webinars ! Check out recordings of our past webinars: https://www.basug.org/videos. Save the date for our in person SAS Blowout on Oct 18 in Cambridge, MA. Registration opens in September.
1 ACCEPTED SOLUTION

Accepted Solutions
DanH_sas
SAS Super FREQ

The last part of the line is incorrect. The DISCRETEORDER option is honored only for VBOX/HBOX, VBAR/HBAR, VLINE/HLINE, and DOT.

Thanks!

Dan

View solution in original post

2 REPLIES 2
DanH_sas
SAS Super FREQ

The last part of the line is incorrect. The DISCRETEORDER option is honored only for VBOX/HBOX, VBAR/HBAR, VLINE/HLINE, and DOT.

Thanks!

Dan

Quentin
Super User

Gotcha. Thanks much.

BASUG is hosting free webinars ! Check out recordings of our past webinars: https://www.basug.org/videos. Save the date for our in person SAS Blowout on Oct 18 in Cambridge, MA. Registration opens in September.

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 16. 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
  • 2 replies
  • 2155 views
  • 0 likes
  • 2 in conversation