title: Drawing an excellent cow
body: <p>I'm working in a big farm as a statistician and my master asked me to draw something to remind him his childhood. It was not easy for me to do that, because there was one big restriction: to do everything using only R. That's how I did that. Could you be so kind and help me to draw better cow?</p>
  
  <pre><code>library(ggplot2)
  
  sim=function(xy){
    xx=xy[,"x"]*(-1)
    yy=xy[,"y"]
    gg=xy[,"gr"]
    xy=rbind(xy,cbind(xx,yy,gg))
    return(as.data.frame(xy))
  }
  
  circleFun &lt;- function(center = c(0,0),diameter = 1, npoints = 100){
    r = diameter / 2
    tt &lt;- seq(0,2*pi,length.out = npoints)
    xx &lt;- center[1] + r * cos(tt)
    yy &lt;- center[2] + r * sin(tt)
    return(data.frame(x = xx, y = yy))
  }
  
  n=100 
  
  akys &lt;- circleFun(c(1,5),1.5,npoints = n)
  akys=as.matrix(cbind(akys,gr=4))
  akys=sim(akys)
  
  akys21 &lt;- circleFun(c(1,4.5),0.5,npoints = n)
  akys21=as.matrix(cbind(akys21,gr=5))
  
  akys22 &lt;- circleFun(c(-1,5.3),0.7,npoints = n)
  akys22=as.matrix(cbind(akys22,gr=5))
  
  nosis=circleFun(c(0.6,1),0.6,npoints = n)
  nosis=as.matrix(cbind(nosis,gr=6))
  nosis=sim(nosis)
  
  x=c(0,1,3,3,2,0,0,1,1,0,3,5,2)
  y=c(0,0,4,6,7,7,0,0,2,2,6,10,7)
  gr=c(2,2,2,2,2,2,3,3,3,3,1,1,1)
  xy=cbind(x=x,y=y,gr=gr)
  
  data=sim(xy)
  data=rbind(data,akys,akys21,akys22,nosis)
  
  ggplot()+geom_polygon(data=data,mapping=aes(x=x,y=y,fill=factor(gr),group=gr), linetype=0, colour="black")+theme_bw()+
    scale_fill_manual(values=c("cornsilk2","chocolate4","lightpink","white","black","maroon4"))+
    theme(axis.line=element_blank(),axis.ticks=element_blank(),axis.text=element_blank(),legend.position="none",panel.grid=element_blank(),panel.border=element_blank())+xlab("")+ylab("")+
    ggtitle("Crazy Cow Wishing You Happy Easter!!!")
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/tYNtj.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/tYNtj.png" alt="enter image description here"></a></p>