From hb at stat.berkeley.edu  Fri Jul 21 03:55:25 2006
From: hb at stat.berkeley.edu (Henrik Bengtsson)
Date: Thu, 20 Jul 2006 18:55:25 -0700
Subject: [Rd] png() and image()
Message-ID: <59d7961d0607201855x37b2fb3bw6d89939e1409287d@mail.gmail.com>

Hi,

I try to create PNG images of a certain size where each pixel
intensity corresponds to exactly one probe signal in an Affymetrix
array.  I try to use png() and image() with zero margins to do this.
Example:

z <- matrix(1:15, nrow=45, ncol=30)
png("large.png", height=nrow(z), width=ncol(z), bg="red")
par(mar=c(0,0,0,0))
image(z, col=gray.colors(16), axes=FALSE)
dev.off()

z <- matrix(1:15, nrow=5, ncol=3)
png("tiny.png", height=nrow(z), width=ncol(z), bg="red")
par(mar=c(0,0,0,0))
image(z, col=gray.colors(16), axes=FALSE)
dev.off()

The problem is that on WinXP the very bottom row and the very right
column of pixels in red.  Trying on Linux, it is only the very right
column that is red.  See attached images (you might have to zoom in to
see it).  I try to do this in R v2.3.1.  The same effect is seen if
the jpeg() device is used.

When rescaling, the same effect is seen (the red border effect is one
pixel wide), e.g.

z <- matrix(1:15, nrow=45, ncol=30)
png("large5.png", height=5*nrow(z), width=5*ncol(z), bg="red")
par(mar=c(0,0,0,0))
image(z, col=gray.colors(16), axes=FALSE)
dev.off()

I might be asking for something that is not supported, but is there a
way around this?  It is a problem, because I wish to tile the images
in an HTML page.

Thanks

Henrik
-------------- next part --------------
A non-text attachment was scrubbed...
Name: WinXP-large.png
Type: image/png
Size: 141 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: WinXP-tiny.png
Type: image/png
Size: 113 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment-0001.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Linux-large.png
Type: image/png
Size: 148 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment-0002.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Linux-tiny.png
Type: image/png
Size: 118 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment-0003.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: WinXP-large5.png
Type: image/png
Size: 317 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment-0004.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: WinXP-tiny5.png
Type: image/png
Size: 173 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-devel/attachments/20060720/ca12637e/attachment-0005.png 


[Rd] png() and image()
Henrik Bengtsson