Dear Simon,
Thank you very much for the very rapid response!
rna is not defined in R, can you, please, supply a reproducible example?
Apologies for including code that could not be run directly.
(I had assumed simulating "similar" data would give the same behaviour,
but having done more experiments, I see that it is not so simple to get
this - which makes me very curious about what is really going on!)
I have put the data that I used on the web. I enclose R code below. At
least on my machine a simple visual comparison of the first column of
plots in these two quartz windows shows that half of the points in these
plots, those on the left side of each panel, have disappeared in the
larger quartz window!
Thanks again.
Best wishes,
Thomas
-----------------------------------------------
# (Hopefully) reproducible code for disappearing pch="." points phenomenon
mydata <- read.table("http://www.stat.washington.edu/tsr/streaking.dat")
quartz()
par(mfrow=c(8,12), mar=c(0,0,0,0), oma=c(0,0,0,0))
for(i in 1:8){ # Row counter
for(j in 1:12){ # Col counter
xtmp <- mydata[,1]
x <- xtmp[(mydata[,3]==i)&(mydata[,4]==j)]
ytmp <- mydata[,2]
y <- ytmp[(mydata[,3]==i)&(mydata[,4]==j)]
plot(x,y,xaxt="n",yaxt="n",ann=FALSE,xlim=c(0,100),ylim=c(0,300),pch=".")
}
}
quartz(width=12,height=8)
par(mfrow=c(8,12), mar=c(0,0,0,0), oma=c(0,0,0,0))
for(i in 1:8){ # Row counter
for(j in 1:12){ # Col counter
xtmp <- mydata[,1]
x <- xtmp[(mydata[,3]==i)&(mydata[,4]==j)]
ytmp <- mydata[,2]
y <- ytmp[(mydata[,3]==i)&(mydata[,4]==j)]
plot(x,y,xaxt="n",yaxt="n",ann=FALSE,xlim=c(0,100),ylim=c(0,300),pch=".")
}
}
-----------------------------------------------
On Wed, 3 Jun 2009, Simon Urbanek wrote:
Thomas,
From
your description I think I know roughly what's going on (Quartz attempts to
snap rectangles on pixel boundaries to prevent malignant anti-aliasing
effects in image plots and this may somehow interact with pch='.' since
Quartz has no way of knowing that those rectangles are supposed to be
glyphs), but I cannot reproduce it.
Thanks,
Simon
On Jun 3, 2009, at 4:45 , t...@stat.washington.edu wrote:
Full_Name: Thomas Richardson
Version: R 2.9.0 GUI 1.28 Tiger build 32-bit (5395)
OS: 10.4.11
Submission from: (NULL) (216.254.15.72)
I have encountered a problem with points in scatterplots disappearing in a
quartz window when it is re-sized (to make it larger).
I am constructing an 8x12 matrix of scatterplots each containing approx 600
points.
In order to get them in the window I remove the axes etc.,
quartz()
par(mfrow=c(8,12), mar=c(0,0,0,0), oma=c(0,0,0,0))
for(i in 1:8){ # Row counter
for(j in 1:12){ # Col counter
plot(rna$red[(rna$row==levels(rna$row[i])&(rna$col==j)],
rna$tof[(rna$row==levels(rna$row[i])&(rna$col==j)],
xlab="tof",ylab="green",xaxt="n",yaxt="n",
ann=FALSE,xlim=c(0,100),ylim=c(0,300),pch=".")
}
}
Here is the problem: how many data points actually appear in the quartz
window
on my screen is highly sensitive to the width and height specified. If I
specify
a different width and height for the quartz window e.g.
quartz(width=8,height=8), OR if I resize the window with the cursor then
points
disappear in certain (x-axis) ranges across all the plots in some columns.
These
bands in which points disappear are the same for all plots in a given
column,
and can be very wide - making a lot of points disappear.
(The visual effect is to make it look as if there are clearly defined
vertical
white lines going across the scatterplots - though the black lines
enclosing
each plot are not broken).
The problem seems to disappear with other plotting symbols e.g. pch="+"
(but
then I end up with crowded plots). So I guess it might be related to the
"special treatment" of "." described on help(points) ??
---
Value pch="." (equivalently pch = 46) is handled specially. It is a
rectangle of
side 0.01 inch (scaled by cex).
---
I find this behaviour unnerving: the (resized) plots made it look as if
there
was a lot of structure in the data, but on closer inspection it turned out
to be
entirely a consequence of the quartz device and plot function!
I can't imagine that this behaviour is intended - even if it were intended
to
suppress points (like some axis labels) - it seems strange that enlarging
the
window makes points disappear. (I also tried setting dpi=72 in quartz(),
but
this did not fix the problem).
Thanks in advance.
Thomas
------------------------------------------------------
sessionInfo()
R version 2.9.0 (2009-04-17)
i386-apple-darwin8.11.1
locale:
en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel