The R Graphics Challenge is a biweekly task meant to explore the capabilities of R graphics. The challenges will start at the most basic level and work their way up, with the goal of making graphing in R something we are all comfortable doing. The solutions will be posted two weeks after the challenge goes out. Just like there is more than one way to skin a cat, there is more than one way to graph in R. These solutions are just a few ways way to accomplish the tasks. Feel free to contact me for extra tips or to pass on other great solutions!

The "Initial" Challenge: April 15

For the first challenge, please draw your initial. It can be as pretty or as plain as you want. I would encourage you to see how creative you can get. Maybe try to build a function that will plot it for you. I have added what may be useful functions if you need help getting started.
  • lines
  • segments
  • points
  • axes
  • abline

### E with lines ### xpts<-c(1,1,1,1,1,2.2,1.8,2.2) ypts<-c(1,3,2,1,3,3,2,1) plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="") segments(xpts[1:4], ypts[1:4], xpts[5:8], ypts[5:8], col="darkorange2", lty="longdash", lwd=3)

### E with points ### v<-seq(from=1, to=3, by=.1) h1<-seq(from=1, to=2.2, by=.1) h2<-seq(from=1, to=1.8, by=.1) plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="") points(rep(1, length(v)), v, pch="*", cex=3, col=c("deeppink", "cornflowerblue") ) points(h1, rep(3, length(h1)),pch="*", cex=3, col=c("deeppink", "cornflowerblue") ) points(h1, rep(1, length(h1)),pch="*", cex=3, col=c("deeppink", "cornflowerblue") ) points(h2, rep(2, length(h2)),pch="*", cex=3, col=c("deeppink", "cornflowerblue") )

plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="") points(rep(1, length(v)), v, pch="E", cex=1.2, col=c("slateblue4", "turquoise4") ) points(h1, rep(3, length(h1)),pch="E", cex=1.2, col=c("slateblue4", "turquoise4") ) points(h1, rep(1, length(h1)),pch="E", cex=1.2, col=c("slateblue4", "turquoise4") ) points(h2, rep(2, length(h2)),pch="E", cex=1.2, col=c("slateblue4", "turquoise4") )

### E with text ### plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="", bg="forestgreen") text(2,2,"E e", cex=8, col="darkseagreen")

### S ### circle<-function(a=1,b=1,r=1,t=seq(0,11*pi/9,0.1)){ x<-a+r*cos(t) y<-b+r*sin(t) pts<-data.frame(cbind(x,y)) return(pts) } a1<-2 a2<-2.25 b1<-1 b2<-3 t1<-seq(pi, 20*pi/9,0.1) t2<-seq(0,11*pi/9,0.1) r1<-1.1 r2<-1

s1<-circle(a1,b1,r1, t1) s2<-circle(a2,b2,r2, t2)

plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="") points(c(s1$x,s2$x),c(s1$y,s2$y), col="white") lines(s1$x, s1$y, col="blue3", lty="longdash", lwd=3) lines(s2$x, s2$y, col="blue3", lty="longdash", lwd=3) segments(s1$x[length(s1$x)],s1$y[length(s1$y)], s2$x[length(s2$x)],s2$y[length(s2$y)], col="blue3", lty="longdash", lwd=3)

### D ### d<-circle(1.5,2,1.5, seq(-4.5*pi/8, 4.5*pi/8, by=.1)) plot(c(0,4), c(0,4), type="n", axes=F,xlab="", ylab="") lines(d$x, d$y, col="blue3", lty="longdash", lwd=3) segments(1.5, .75,1.5, 3.25, col="blue3", lty="longdash", lwd=3)

The Sample Challenge: April 29

Present a series of plots demonstrating how sampling variability decreases with increasing n. In other words show how a sample from a known distribution differs from that exact distribution. Please use any continuous distribution. On these plots, also show how some sample statistic varies from a true value of a parameter. For example, you might include text on the plot that gives the sample mean compared to the true mean. Instead of mean you might look at median, sd, quantiles etc.
  • par
  • lines
  • density
  • seq
  • text

This topic: Main > RGraphicsChallenge
Topic revision: 29 Apr 2008, ElizabethKoehler
 
This site is powered by FoswikiCopyright © 2013-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Vanderbilt Biostatistics Wiki? Send feedback