Does anyone know how to creat a boxplot with descending y axis mean values? It seems the only options for descending is descending alphabetical by the xaxis classfication variable.
I am doing Proc Boxplot with the following code:
Proc Boxplot data=sw_glove;
Plot (concentration)*Process;
By Descending Process;
Run;
I want descending Concentration values, grouped by Process (numeric), not descending process names (alpahbetic).
Another option would be to list out the x axis variable names in the descending value order, but this seems like a lot of meaningless work.
Thanks,
Hi,
In SGPLOT, I would probably do this by sorting the data, then using discreteorder=data on the axis statemetn, as below.
proc sql; create table shoes as select region, sales, mean(sales) as mean from sashelp.shoes group by region order by mean descending,region ; quit; title1 "discreteorder=data"; proc sgplot data=shoes; vbox sales/category=region; xaxis type=discrete discreteorder=data; run; title1;
Not sure the easiest way to do it with PROC BOXPLOT. If you do need a list of x-values for an x-statement, you could generate it with something like:
170 proc sql; 171 select distinct quote(trim(region)) , mean(sales) as mean 172 into :RegionList separated by " ", :dummy 173 from sashelp.shoes 174 group by region 175 order by mean descending 176 ; 177 quit; 178 179 %put &RegionList; "Middle East" "United States" "Canada" "Central America/Caribbean" "Western Europe" "Eastern Europe" "Pacific" "South America" "Africa" "Asia"
HTH,
--Q;
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!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.