140 likes | 265 Views
GRAPHS ETC., PART 2. Point plots with error bars Multiple-panel graphs Adjusting figure margins Adding text & lines to graphs. 19 September 2014 Sherubtse Training. MORNING PRACTICE.
E N D
GRAPHS ETC., PART 2 Point plots with error bars Multiple-panel graphs Adjusting figure margins Adding text & lines to graphs 19 September 2014 Sherubtse Training
MORNING PRACTICE... Create a data frame of only UWICE MALES HtWt data. Make a scatterplot showing the relationship between height & weight. Learn and use as many par() arguments as possible in your scatterplot.
Import the data called 'sightings' What kind of summary data would be useful and interestingto display and graph?
Use the functions by() and aggregate() to calculate (separately) mean & sd of number of sightings (averaged across 5 transects), by species mean.ag <- aggregate(Count~Species, data=sightings, mean) mean.by <- by(sightings$Count, sightings$Species, mean) To calculate mean & sd simultaneously... mean.sd.ag <- aggregate(Count~Species, data=sightings, FUN=function(x) c(mn=mean(x), stdev=sd(x)))
Point Plots • Appropriate for displaying the mean and error of data • Error bars can represent SD, SE, or 95%CI’s • Point plots are often underused and under-appreciated—but they are more informative than bar plots for displaying means (not counts)
Point Plots or Bar Plots? To show counts from one transect, use bar plots (or pie charts, for relative frequency) because there would be no error to display If the data for each species are averaged across 5 different transects, then there WOULD be error associated with the average # of sightingsfor each species. In this case, a point plot would show the mean and error better than a bar plot would.
Load the package plotrix, import the sightings data, and create this initial point plot showing mean ± SE To get the filled round points, use the argument pch=16
With plotrix, we have to do some things to remove the funny x-values and add buffer on the plot sides... Add these arguments in function plotCI: xaxt="n", xlim=c(0.75,4.25)
Learn how to adjust plot margins and add text anywhere you want. Type each line, then run it: default.par<-par(no.readonly=T) # start by saving default graphic parameters par(mfrow=c(1,2), oma = c(0,0,3,0)) par(mar=c(6,4,0.5,0.5)) # margins for left-side plot plotCI(mean.by, uiw=SE.by, pch=16, ylab="Mean # of sightings", xaxt="n", xlab="", xlim=c(0.75,4.25)) mtext(names(mean.by), at=1:4, line=0.5, side=1, las=3) par(mar=c(4,0.5,2,0.5)) # margins for right-side plot plotCI(mean.by, uiw=SE.by, pch=16, xaxt="n", xlab="", ylab="", yaxt="n", xlim=c(0.75,4.25)) mtext("Text indented above plot!", col="blue",side=3, line=0.5) mtext("This is how we place text\nin the outer margins", cex=1.5, col="purple", line=-.5, side = 3, outer=T)
HtWt Data What kinds of interesting questions can we ask?What graphs would we make to answer them? • Is there a difference in height between UWICE & SFS personnel? Does it differ for males vs. females? • Is there a difference in weight between UWICE & SFS personnel? Does it differ for males vs. females? • Is there a relationship between height and weight for UWICE personnel? How about for SFS personnel? • Is there a relationship between height and weight for males? How about for females?