On Apr 16, 2011, at 11:50 AM, Peter Ehlers wrote: > On 2011-04-16 09:36, Sascha Vieweg wrote: >> On 11-04-16 15:04, Josh B wrote: >> >>> Dear listserv, >>> >>> Here is my latest formatting problem. I would like to rotate the x-axis >>> labels >>> by 45 degrees on a _barplot_. Apparently this is slightly different from the >>> example given in the R FAQ, which is for rotating the x-axis labels on a >>> scatterplot >>> (http://cran.r-project.org/doc/FAQ/R-FAQ.html#How-can-I-create-rotated-axis-labels_003f). >>> >>> >>> I have adapted that code, as best I could, and here is what I have come up >>> with >>> so far: >>> >>> x<- c(4, 1, 1, 1) >>> barplot(x, space = 0) >>> #the "space = 0" argument, above, just reflects my personal preference for >>> having no space between the bars >>> text(1:4, par("usr")[3] - 0.025, srt = 45, adj = 1, labels = c("< 750", >>> "750-1000", "1000-1250","> 1250"), xpd = TRUE, font = 2) >>> >>> The graph this generates is pretty close to what I want, but here's where >>> I'm >>> stuck: How do I move the x-axis labels to the _center_ of each bar? Right >>> now, >>> they line up with the right-side of each bar. >> >> Try to set the parameter: adj=.5 (see ?par). HTH, *S* >> > > That won't work (try it). > > Use > > text(1:4-0.5, ....) > > Peter Ehlers
Actually, the key is knowing that barplot() returns the bar midpoints (See the Value section of ?barplot). Thus: x <- c(4, 1, 1, 1) mp <- barplot(x, space = 0) text(mp, par("usr")[3] - 0.025, srt = 45, adj = 1, labels = c("< 750", "750-1000", "1000-1250", "> 1250"), xpd = TRUE, font = 2) HTH, Marc Schwartz ______________________________________________ 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.