I heard that show='ATTRMAP' will show the missing group in the legend. I tried the following code but it is not working. Can anyone help ? thanks.
data order;
input Value $ n;
retain ID 'A' Show 'AttrMap';
FillStyle = cats('GraphData', n);
LineStyle = cats('GraphData', n);
MarkerStyle = cats('GraphData', n);
TextStyleElement = cats('GraphData', n);
datalines;
F 2
M 1
;
run;
data test;
set sashelp.class;
if sex='F' then delete;
run;
ods listing close;
ods rtf file='c:\mytest.rtf';
proc sgplot data=test dattrmap=order ;
scatter x =height y = weight / group=sex attrid=A name="sct";
keylegend "sct" / noborder position=bottom ;
run;
ods rtf close;
ods listing;
I ran your code using SAS 9.40M3, and it worked as expected. The symbol for "F" was included inthe legend even though there is no "F" in the data. Please make sure you have SAS 9.40M3 or later.
I don't see where you have show = 'ATTRMAP' in the code
If you are getting an error show the log with code and error in a code box opened with the forum {i} menu icon.
Hi,
show is a variable in dataset order.
it has the value "ATTRMAP'.
When later attrmap=order is used in scatter plot, it should display the missing group in the legend.
that is what I am expecting . However, the missing group is not in lengend.
I ran your code using SAS 9.40M3, and it worked as expected. The symbol for "F" was included inthe legend even though there is no "F" in the data. Please make sure you have SAS 9.40M3 or later.
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
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.