Data visualization with SAS programming

sgplot legend with lines and markers

Reply
Contributor
Posts: 27

sgplot legend with lines and markers

Hi,

Wondering is it possible to get the names just below the respective panel.  Thanks.

data dummy;
	set sashelp.class;
	do day=1 to 10;
		n=ranuni(50)+20  ;
		output;
	end;
run;

proc sgpanel data=dummy;  
	panelby sex /layout=columnlattice  uniscale=all  novarname colheaderpos=bottom ;
	series x=day y=n/group=name markers name="name"
		lineattrs=(thickness=1) markerattrs=(size=6) attrid=subjid;
	colaxis integer label="Day";
	rowaxis label="n";
	keylegend "name"/ title ="Name";
run;

SGPanel1.png

Super User
Posts: 13,084

Re: sgplot legend with lines and markers

Do you mean a separate legend with different values for female and male? If the Legend is more important than two side-by-side graphs then  easiest would be Proc SGPLOT and by sex:

proc sort data= dummy;
by sex;
run;

proc sgplot data=dummy;  
   by sex;
	series x=day y=n/group=name markers name="name"
		lineattrs=(thickness=1) markerattrs=(size=6) attrid=subjid;
	keylegend "name"/ title ="Name";
run;
Contributor
Posts: 27

Re: sgplot legend with lines and markers

Yes. but that gives  two separate images.  I like to have both side by side on the same page.  Thanks. 

SAS Super FREQ
Posts: 1,265

Re: sgplot legend with lines and markers

No.  With SGPANEL, the legend can only be outside the cell grid.  If you want two legends, one in each cell, you would have to construct the 2-cell LATTICE yourself using GTL LAYOUT LATTICE.

Getting Started example:  https://blogs.sas.com/content/graphicallyspeaking/2013/02/12/gtl-layouts/

SAS Super FREQ
Posts: 1,048

Re: sgplot legend with lines and markers

You could ODS LAYOUT to put the SGPLOT output side-by-side on the page.

Contributor
Posts: 27

Re: sgplot legend with lines and markers

Need to learn GTL more in detail.  Tried ODS layout earlier, but did not work well.  Could you please provide some sample code for ODS layout.  What about proc gslide and proc greplay?  Thanks in advance.

 

Ram 

Super User
Posts: 22,874

Re: sgplot legend with lines and markers

If your graph is going to be as busy as the one you posted I would recommend an alternative. Add labels at the end or beginning of each series. Possibly both and have some displayed on either side to help with readability. Otherwise practically trying to read that won't work.  

Ask a Question
Discussion stats
  • 6 replies
  • 238 views
  • 0 likes
  • 5 in conversation