[R] How to draw a rect() behind a hist() ?
Peter Ehlers
ehlers at ucalgary.ca
Wed Dec 1 04:42:39 CET 2010
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
>
More information about the R-help
mailing list