BookmarkSubscribeRSS Feed
marisa_jenkins
Fluorite | Level 6

HI all

I know you can add a refline in PROC SGPLOT but can you do it in PROC SGSCATTER?

 

e.g. This is the code we would use to get a refline at Y=0 using PROC SGPLOT but we are teaching a course that primarily uses SGSCATTER as has the ability to produce multiple scatterplots in one PROC and keen to just stick with that.

 

PROC SGPLOT DATA=dataset;
   SCATTER X= xvar Y= yvar;
   LOESS X= xvar Y= yvar;
   REFLINE 0;
RUN;

 

Thank you Marisa

5 REPLIES 5
Reeza
Super User
Not AFAIK but you can add a regression or loess line.

Sgcatter does have tmplout on the PROC statement so you can get the GTL code and modify that.

Or switch to SGPANEL?

marisa_jenkins
Fluorite | Level 6

Thank you Reeza

Yes we can add a LOESS line in PROC SGSCATTER but are looking for a ref line at Y = 0.

We currently use a mix of PROC GPLOT and PROC SGSCATTER but are hoping to just use one and not introduce another to be consistent with out other units.

Marisa

PGStats
Opal | Level 21

Could also be done with SG annotation.

PG
marisa_jenkins
Fluorite | Level 6

Thank you PG

We are keen to keep with PROC SGSCATTER as that is what is used throughout our course.

Marisa

PGStats
Opal | Level 21

SGSCATTER is not a good choice as a general purpose graphing procedure, if I may say so. Here is how to draw reference lines with annotation in SGSCATTER:

 

data reflines;
retain drawspace "layoutpercent" linecolor "blue";
input function $ x1 y1 x2 y2;
datalines;
line 11 55.5 53.5 55.5 
line 56 55.5 99   55.5
;

proc sgscatter data=sashelp.class sganno=reflines;
compare x=(age height) y=weight / loess=(degree=2);
run;

SGScatter8.png

 

 

Positioning the reference lines was by trial and error as you cannot tie their positions to data values.  

PG

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

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.

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