Want to make your charts more playful? Well, why not replace the bars with images!
Let's start with a normal, and perhaps not so exciting bar chart.
data Xmas;
input Year Gifts;
datalines;
2017 11
2018 8
2019 12
2020 19
2021 5
;
run;
/* Bar Chart */
ods graphics / reset width=600px height=400px imagename='Xmas gifts Bar Chart';
title;footnote;
proc sgplot data=Xmas noborder noautolegend;
vbar year / response=Gifts datalabel datalabelattrs=(size=12 weight=bold);
xaxis display=(noticks noline nolabel) integer;
yaxis display=(nolabel noticks noline) min=0 integer grid;
run;
And here is the resulting image. Perfectly fine.

Now let's do a scatter plot using the SYMBOLIMAGE statement, plotting out a suitable Santa instead of the bars.
The image file santa.png is not included in this article, so google and get yourself a nice image or just take whatever you've got to test this out.
/* Add variable for position of the value (text statement) a bit above the image */
data Xmas_Image;
set Xmas;
Gifts_Text_location = Gifts+5;
run;
%let IMGPATH=%str(C:\temp);
ods graphics / reset width=600px height=400px imagename='Xmas gifts with image';
proc sgplot data=Xmas_Image noborder noautolegend;
symbolimage name=Santa image="&IMGPATH.\santa.png";
scatter x=Year y=Gifts / markerattrs=(symbol=Santa size=110);
text x=Year y=Gifts_Text_location text=Gifts / textattrs=(size=20 weight=bold color=white) strip position=left backlight=0.75;
xaxis display=(noticks noline nolabel) integer offsetmin=0.15 offsetmax=0.15;
yaxis display=none offsetmin=0.2 offsetmax=0.2;
run;
And here we are!
