Hi, I have the following code: hist(gps$heartpercent, breaks=5) rect(90, par("usr")[3], 100, par("usr")[4], col = "red") How do I get the rectangle to appear behind the histogram. Barring that, how can I make certain bars of the histogram to be a certain color? Thanks, Jason
On 2010-11-30 17:27, Jason Edgecombe wrote:> Hi, > > I have the following code: > > hist(gps$heartpercent, breaks=5) > rect(90, par("usr")[3], 100, par("usr")[4], col = "red") > > How do I get the rectangle to appear behind the histogram. Barring that, > how can I make certain bars of the histogram to be a certain color? >Here are a couple of ways: 1. using hist(); just plot the histogram twice. x <- rnorm(1000, 100, 5) hist(x) rect(90, 0, 98, par('usr')[4], col = 'red') hist(x, add = TRUE) For coloured bars, use a colour vector: hist(x, breaks = 5, col = c(3,3,4,4,2)) 2. using lattice; histogram(x, panel=function(...){ panel.rect(90,0,98,1000,col='bisque',border=NA) panel.histogram(...,col='transparent',lwd=2) } ) Again, you can define bar colours with a colour vector. Lattice is more customizable albeit a little harder to learn. Peter Ehlers> Thanks, > Jason >
On 12/01/2010 12:27 PM, Jason Edgecombe wrote:> Hi, > > I have the following code: > > hist(gps$heartpercent, breaks=5) > rect(90, par("usr")[3], 100, par("usr")[4], col = "red") > > How do I get the rectangle to appear behind the histogram. Barring that, > how can I make certain bars of the histogram to be a certain color? >Hi Jason, Does this do what you want? heartpercent<-sample(0:100,200,TRUE) library(plotrix) barp(hist(heartpercent,breaks=5,plot=FALSE)$counts, names.arg=c("0-20","21-40","41-60","61-80","81-100"), do.first=rect(5,par("usr")[3],par("usr")[2],par("usr")[4], col = "red")) Jim