That doesn't really seem to make sense to me as a graphical representation (transforming adjacent y values differently), but if you really want to do so, here's what I'd do if I understand your goal (the preprocessing is independent of the graphics engine):
DAT <- data.frame(x = runif(1000, 0, 20), y = rcauchy(1000)^2) # Nice and volatile! # split y based on some x binning and assign empirical quantiles of each group DAT$yquant <- with(DAT, ave(y, cut(x, seq(0, 20, 5)), FUN = function(x) ecdf(x)(x))) # BASE plot(yquant ~ x, data = DAT) # ggplot2 library(ggplot2) p <- ggplot(DAT, aes(x = x, y = yquant)) + geom_point() print(p) Michael Weylandt PS -- I see Josh Wiley just responded pointing out your requirements #1 and #2 are incompatible: I've used 1 here. On Fri, Mar 9, 2012 at 7:37 PM, Michael <comtech....@gmail.com> wrote: > Hi all, > > I am trying hard to do the following and have already spent a few hours in > vain: > > I wanted to do the scatter plot. > > But given the high dispersion on those dots, I would like to bin the x-axis > and then for each bin of the x-axis, plot the quantiles of the y-values of > the data points in each bin: > > 1. Uniform bin size on the x-axis; > 2. Equal number of observations in each bin; > > How to do that in R? I guess for the sake of prettyness, I'd better do it > in ggplot2? > > Thank you! > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. ______________________________________________ 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.