Cool, thanks!
-----Original Message----- From: Ross Ihaka [mailto:[EMAIL PROTECTED] Sent: Wed 3/26/2003 12:26 PM To: Vasudevan, Geetha Cc: [EMAIL PROTECTED] Subject: Re: [R] hist overlay... Vasudevan, Geetha wrote: > thanks to all for the 2d scatter plot. > > i have one more. > > how do i plot 'hist(y1, col="red") and hist(y2,col="blue") in the same window? Here are a couple of ways to do what you have asked for (as oppposed to want you want :-). I'm assuming that you precompute the histograms as follows: x <- rnorm(100) y <- rnorm(100) xh = hist(x, plot=FALSE) yh = hist(y, plot=FALSE) You can customize these two "hist" calls anyway you like. Here is a function which will plot the result as superimposed bars. hist2v <- function(xh, yh) { plot.new() plot.window(xlim=range(xh$breaks, yh$breaks), ylim=range(0, xh$density, yh$density)) rect(xh$breaks[-length(xh$breaks)], 0, xh$breaks[-1], xh$density, border="blue") rect(yh$breaks[-length(yh$breaks)], 0, yh$breaks[-1], yh$density, border="red") axis(1) axis(2) } and one which will plot only the tops of the bars: hist2v <- function(xh, yh) { plot.new() plot.window(xlim=range(xh$breaks, yh$breaks), ylim=range(0, xh$density, yh$density)) nx = length(xh$density) ny = length(yh$density) lines(rep(xh$breaks, c(1, rep(2, nx - 1), 1)), rep(xh$density, each = 2), col = "red") lines(rep(yh$breaks, c(1, rep(2, ny - 1), 1)), rep(yh$density, each = 2), col = "blue") axis(1) axis(2) } Either of these functions could be called as hist2v(xh, yh) It would be easy to add colour and line texture arguments. -- Ross Ihaka Email: [EMAIL PROTECTED] Department of Statistics Phone: (64-9) 373-7599 x 85054 University of Auckland Fax: (64-9) 373-7018 Private Bag 92019, Auckland New Zealand ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help