In 9.4 I can use HEADERATTRS option but I want to change the font size using SAS 9.3 that does not support that option. Can I do the same another way?
proc sgpanel data=sashelp.class;
panelby age / layout=rowlattice rowheaderpos=right headerattrs=(size=18pt);
series x=weight y=height;
run;
Here is one work around. Cell headers use the GraphValueFont attribute for rendering. This is also used by things like axis tick values, and maybe other things like legend values, etc.. You can derive a font, and change this attribute in GraphFonts. Then, you can set the axis values back to the smaller font by using the ValueAttrs on the axis.
proc template;
define style Styles.Fonts;
parent = styles.listing;
class GraphFonts
"Fonts used in graph styles" /
'GraphValueFont' = ("<sans-serif>, <MTsans-serif>",12pt)
;
end;
run;
ods html style=Styles.Fonts;
proc sgpanel data=sashelp.class;
panelby sex;
vbar age;
colaxis valueattrs=(size=8);
rowaxis valueattrs=(size=8);
run;
Here is one work around. Cell headers use the GraphValueFont attribute for rendering. This is also used by things like axis tick values, and maybe other things like legend values, etc.. You can derive a font, and change this attribute in GraphFonts. Then, you can set the axis values back to the smaller font by using the ValueAttrs on the axis.
proc template;
define style Styles.Fonts;
parent = styles.listing;
class GraphFonts
"Fonts used in graph styles" /
'GraphValueFont' = ("<sans-serif>, <MTsans-serif>",12pt)
;
end;
run;
ods html style=Styles.Fonts;
proc sgpanel data=sashelp.class;
panelby sex;
vbar age;
colaxis valueattrs=(size=8);
rowaxis valueattrs=(size=8);
run;
Thank you. My Spaghetti Plots are beautiful.
Is the "connection" between GraphValueFont and the Cell Header documented somewhere?
Some of such doc is available in the "GRL Users' Guide" book in the SAS doc in the Appendix. Look under "Graph Style Elements used by ODS Graphics".
Can you share a picture of your Spaghetti plot? Just curious.
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.