I was wondering if there was a way to rename the character names of variables directly in the legend. I have a scatterplot that looks great but the legend says "Indian" and "Arctic" with the corresponding symbols. Is there any way I can make the legend say "Indian Ocean" and "Arctic Ocean" directly on the graph?
As a "best practice", I would recommend using a data-driven solution, rather than hard-coding the text. If you hard-code text in the legend, then one day if/when the data changes, then the hard-coded legend will be wrong (which could go un-noticed and compromise the data-integrity of the graph).
You don't mention which proc you're using, so here's an example using traditional gplot...
Here's a plot with 'M' and 'F' in the legend:
legend1 label=none position=(bottom center);
proc gplot data=sashelp.class;
plot height*weight=sex / legend=legend1;
Now, instead of 'M' and 'F', let's say we want 'Male' and 'Female' to show up in the legend. You could either create a user-defined format that makes 'M' and 'F' show up as 'Male' and 'Female' ... or you could add an extra variable to the data, like so ...
data mod_class; set sashelp.class; length mod_sex $10; if sex='M' then mod_sex='Male'; else if sex='F' then mod_sex='Female'; else mod_sex=sex; run;
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.