BookmarkSubscribeRSS Feed
tc
Lapis Lazuli | Level 10 tc
Lapis Lazuli | Level 10

PeterCottontail.png

 

A quick SAS ODS Graphics take on a cute Easter Cards for Kids project. Happy Easter, all!

 

* Fun w/SAS ODS Graphics: Here Comes Polygons-and-Ellipses Peter Cottontail!
  Inspired by cute card at iheartcraftythings.com/easter-cards-for-kids.html;

data bunny;                   * Generate polygons for bunny's body and teeth;
polygon=1; x=1; y=3; output; x=4; output; y=0; output; x=1; output; x=.; y=.;  * Body;
polygon+1; xt=2; yt=1; output; xt=2.5; output; yt=.35; output; xt=2; output;   * Left tooth;
polygon+1; xt=2.5; yt=1; output; xt=3; output; yt=.35; output; xt=2.5; output; * Right tooth;  

ods graphics / reset height=5in width=5in antialias imagefmt=png;
proc template;                * Draw bunny (polygon and ellipse plots); 
define statgraph bunny;
begingraph / opaque=true border=false backgroundcolor=cxFDA3AC; * Rose backbround color;
layout overlayequated / opaque=true border=false backgroundcolor=cxFDA3AC wallcolor=cxFDA3AC WALLDISPLAY=(FILL)
       xaxisopts=(display=none offsetmin=0.05 offsetmax=0.05)
       yaxisopts=(display=none offsetmin=0.05 offsetmax=0.05);
entry "HAPPY EASTER!" / textattrs=(size=16pt color=white) valign=top; * Easter greetings;       
ellipseparm xorigin=2 yorigin=3 semimajor=.45 semiminor=1.75 slope=.15 /
            fillattrs=(color=cxE5E1D8) display=(fill); * Left outer ear (use slope to tilt);
ellipseparm xorigin=2 yorigin=3 semimajor=.25 semiminor=1.25 slope=.15 /
            fillattrs=(color=cxFEE6E4) display=(fill); * Left inner ear;   
ellipseparm xorigin=3 yorigin=3 semimajor=.45 semiminor=1.75 slope=-.15 /
            fillattrs=(color=cxE5E1D8) display=(fill); * Right outer ear; 
ellipseparm xorigin=3 yorigin=3 semimajor=.25 semiminor=1.25 slope=-.15 /
            fillattrs=(color=cxFEE6E4) display=(fill); * Right inner ear);
polygonplot x=x y=y id=polygon / fillattrs=(color=cxE5E2D9) display=(fill);
ellipseparm xorigin=2 yorigin=2 semimajor=.4 semiminor=.4 slope=0 /
            fillattrs=(color=white) display=(fill); * Left outer eye;
ellipseparm xorigin=2 yorigin=1.85 semimajor=.2 semiminor=.2 slope=0 /
            fillattrs=(color=black) display=(fill); * Left inner eye;                  
ellipseparm xorigin=3 yorigin=2 semimajor=.4 semiminor=.4 slope=0 /
            fillattrs=(color=white) display=(fill); * Right outer eye;
ellipseparm xorigin=3 yorigin=1.85 semimajor=.2 semiminor=.2 slope=0 /
            fillattrs=(color=black) display=(fill); * Right inner eye;
polygonplot x=xt y=yt id=polygon / outlineattrs=(color=black thickness=1pt) fillattrs=(color=white) display=(fill outline); * Teeth;           
ellipseparm xorigin=2.5 yorigin=1.1 semimajor=.8 semiminor=.4 slope=0 /
            fillattrs=(color=cxFEE6E6) display=(fill); * Nose; 
endlayout;
endGraph;
end;
 
proc sgrender data=bunny template=bunny; * Draw the chart!;
run;

 

1st Draft!

PeterCottontailBeforeColoring.png

2 REPLIES 2
Thripsman
Calcite | Level 5

Thanks. These are always fun to see. 

FYI - the last comment needs a semicolon in place of the colon.

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1195 views
  • 8 likes
  • 2 in conversation