
A quick transformation of code for a SAS ODS Graphics 24-hour watch face to yield "heartfelt" Mother's Day greetings (inspiration). Happy Mother's Day, all!
* Fun With SAS ODS Graphics: Heartfelt Mother's Day Greetings (Text Plots)
Inspired by neat image at stock.adobe.com/images/happy-mothers-day-gift-card-in-trendy-style-mothers-day-design-in-vector-cute-simple-graphics-in-blue-color/107652283;
data hearts; * Generate 32 points for hearts around a circle of radius=1;
do heart=0 to 32;
heartUNI=unicode('\u2764'); * Unicode for heart;
Yh=cos(heart/32*2*constant('pi'));
Xh=sin(heart/32*2*constant('pi'));
angle=360-heart/32*360; * Compute angle to display heart at;
output;
end;
xH=.;
txt1="happy"; Xt1=0; Yt1=.43; output; * Put happy Mother's Day in center of circle (on separate lines);
txt2="Mother's"; Xt2=0; Yt2=.15; output;
txt2="Day"; Xt2=0; Yt2=-.15; output;
* Generate Happy Mother's Day greetings;
ods graphics on / reset height=5in width=5in imagefmt=svg;
proc sgplot data=hearts aspect=1 noautolegend nowall noborder subpixel;
styleattrs backcolor=cx6AB2EC; * Hex RGB code for light blue background;
text x=Xh y=Yh text=heartUNI / rotate=angle contributeoffsets=none strip textattrs=(size=28pt color=white); * Add hour markers (circles); * Display white hearts in a circle (tilted at angles);
text x=Xt1 y=Yt1 text=txt1 / contributeoffsets=none strip textattrs=(size=22pt color=white weight=normal) splitchar='*' splitpolicy=splitalways; * Display 'happy' (samller, lowercase, white);
text x=Xt2 y=Yt2 text=txt2 / contributeoffsets=none strip textattrs=(size=44pt color=white weight=bold) splitchar='*' splitpolicy=splitalways; * Display Mother's Day (larger, uppercase, white, bold;
xaxis display=none offsetmin=.08 offsetmax=.08; * Suppress axes, provide a little padding;
yaxis display=none offsetmin=.08 offsetmax=.08;
run;