Thank you, Its looking like your package will work for me. I have two questions.
First, how do I rotate the plot 90 degrees so the group labels are on the x axis and the response value on the y axis? Second, I'm having trouble with the group labels. I need to order my groups into meaningful groups to properly display my data. I used the sort.segs=FALSE argument expecting it to plot the values in the order of data in the plant_height matrix. centipede.plot(t(plant_height[,c(3,2,4)]), panel.first=c(abline(h=1: 13 , col="lightgray", lty=2), abline(v=mean(plant_height$est), col="lightgray")), sort.segs=FALSE, left.labels=plant_height$group, bg="green", right.labels=rep("", 13), xlab="Mean plant height (cm) +- SE") Not only are the groups not plotted in the order as they appear in the matrix, but the labels are incorrect. The labels cycle through CA-I, CAIII, CA-II, in that order. The plot file is attached. Colin On Mon, Feb 13, 2012 at 1:31 AM, Jim Lemon <j...@bitwrit.com.au> wrote: > On 02/13/2012 09:51 AM, Colin Wahl wrote: >> >> Does anyone have any recommendations for producing dotplots with error >> bars? Are there packages available for this? I searched far and wide >> and cannot find a suitable option. >> >> I am trying to produce publication-quality figures for my thesis >> results. Dotplots (Cleveland dotplots) are a much better form of >> summarizing barchart-type data. It does not appear that any of the >> main plotting packages in r support dotplots with error bars. >> Considering the benefit of these plots, I find it difficult to believe >> that they have not been fully integrated into R. >> >> I did find a function "dotplots.errors" available here: >> http://agrobiol.sggw.waw.pl/~cbcs/articles/CBCS_5_2_2.pdf. >> >> However, I have found this function absurdly difficult to use when >> customizing figures (ordering displays properly, or just simple >> getting the function to work.) >> >> I've been struggling for the last few hours to figure out the error: >> "error using packet 1 sum not meaningful for factors." Unlike other >> packages, this function doesnt have a ?dotplots.errors to help guide >> troubleshooting. I presume this is a technicality due to the a numeric >> variable being identified as a factor. However, I've double checked >> that all the numeric columns in the data frame are not factors, and >> the error persists. >> >> I'd really prefer not just calling it quits and resorting to >> old-school sloppy bar charts, but if thats what I need to do to finish >> this in a timely manner, then so be it. >> > Hi Colin, > I am grateful that Marcin Kozak gave plotrix a plug in the paper, and to > show my gratitude, I'll explain how to use centipede.plot to get the > illustration in the paper. Assume that you have the data frame shown on p70 > of the paper: > > plant_height<-read.csv("plant_height.csv") > > Now, to echo Marcin, let us produce the plot: > > library(plotrix) > centipede.plot(t(plant_height[,c(3,2,4)]), > left.labels=plant_height$group,bg="black", > right.labels=rep("",13),xlab="Mean plant height (cm) +- SE") > > If you want the mean value line: > > abline(v=mean(plant_height$est),col="lightgray") > > The grid lines are a bit more difficult. You could insert a line into the > function just after the call to box() to draw grid lines under each dot: > > abline(h=1:dim(x)[2],col="lightgray",lty=2) > > However, this looks like such a good idea that I will add two arguments to > the function to do the vertical line(s) and horizontal grid automatically, > and this option will appear in the next version of plotrix. > > Jim
<<attachment: plantheight.png>>
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.