[BioC] plotDensity in a multiple-figure enviroment
Adaikalavan Ramasamy
ramasamy at cancer.org.uk
Mon Mar 7 12:47:28 CET 2005
There must be more elegant way of doing this but here is my solution
my.plotDensity <- function (mat, ylab = "density", xlab = "x", type =
"l", col = 1:6, ...){
x.density <- apply(mat, 2, density)
all.x <- do.call("cbind", lapply(x.density, function(x) x$x))
all.y <- do.call("cbind", lapply(x.density, function(x) x$y))
for(i in 1:ncol(mat)){
plot( all.x[ ,i], all.y[ ,i],
xlim=range(all.x), ylim=range(all.y),
main=colnames(mat)[i],
ylab=ylab, xlab=xlab, type=type, col=col, ... )
}
invisible(list(all.x = all.x, all.y = all.y))
}
# Usage
m <- matrix( rnorm(1000*6)^2, nc=6 ) # simulate
m[,5] <- 5 + m[,5] # make array 5 an outlier
colnames(m) <- paste("Array", 1:6)
par(mfrow=c(2,3))
my.plotDensity(m)
Regards, Adai
On Mon, 2005-03-07 at 07:33 +0000, zhihua li wrote:
> Hi all.
> I have a microarry gene expression data in the form of a matrix, where rows
> represent genes and columns represent conditions. plotDensity in "affy"
> package can draw a density distribution curve for each column and put them
> in a single plot. I wanna draw a density distribution curve for each
> colomn, put them each in a seperate plot, and put all these plots in a
> single page. What should I do?
> Thanks to all!
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
>
More information about the Bioconductor
mailing list