[R] Plotting an array of histograms
Mark Myatt
mark at myatt.demon.co.uk
Mon Jul 30 12:59:55 CEST 2001
Ted.Harding at nessie.mcc.ac.uk writes:
>I have a dataset (of say values of X), each value associated
>with a level of a factor F (25 levels in all), in a dataframe.
>
>I want to make a single plot which contains 25 histograms of X,
>one for each level of F and each one appropriately labelled.
>
>(And, since there are 25 levels, a 5x5 array would be nice).
>
>What's the trick in R, please?
The trick is to the par() function. Here is an example ...
#
# generate some dummy data
#
x <- rnorm(n = 1000, mean = 12, sd = 1)
f <- round(runif(n = 1000, min = 1, max = 25))
#
# set device for 5 * 5 array of charts
#
par(mfrow = c(5,5))
#
# plot histograms
#
tapply(x, f, hist, ylab="n", xlab="x")
I think you'll need a for() loop to get better control over the plots.
Something like:
for(i in min(f):max(f))
{
hist(x[f==i], xlim=range(x), ylab="n", xlab="x", main = i)
}
But I might be wrong.
I hope that helps.
Mark
--
Mark Myatt
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-help
mailing list