Hi list,
I found this one when I was trying to output the Venn diagram to a .pdf file.?
When there are 4 sets of groups to draw, the .pdf file automatically has 3 pages
and the figure only appears on the 3rd page in the .pdf file with the first 2
pages being blank.? Try the following: (I'm using R-2.9.0 on WinXP, gplots
2.7.1).? gplots 2.7.3 has the same problem.
###=========================pdf("test.pdf")
A<- 1:20
B<- 1:20
C<- 2:20
D<- 3:21
input<-list(A,B,C,D)
venn(input)
dev.off()
###=========================
By looking at the code of "drawVennDiagram", I think the problem comes
from the fact there are one grid.newpage() call and two plot function calls when
numCircles==4 (see below).? I wonder the grid.newpage() and the second plot call
are necessary?
Thanks a lot.
...Tao
##========================================================================........
??? else if (4 <= numCircles && numCircles <= 5 &&
!simplify) {
??????? grid.newpage()????????????????????????????????????
<<<<<<<<<<<<<<<<==============================???????
relocate_elp <- function(e, alpha, x, y) {
??????????? phi = (alpha/180) * pi
??????????? xr = e[, 1] * cos(phi) + e[, 2] * sin(phi)
??????????? yr = -e[, 1] * sin(phi) + e[, 2] * cos(phi)
??????????? xr = x + xr
??????????? yr = y + yr
??????????? return(cbind(xr, yr))
??????? }
??????? lab <- function(identifier, data, showLabel = showSetLogicLabel) {
??????????? r <- data[identifier, 1]
??????????? if (showLabel) {
??????????????? return(paste(identifier, r, sep = "\n"))
??????????? }
??????????? else {
??????????????? return(r)
??????????? }
??????? }
??????? plot(c(0, 400), c(0, 400), type = "n", axes = F, ylab =
"",??
<<<<<<<<<<<<<<===========???????????
xlab = "")
??????? if (4 == numCircles) {
??????????? elps = cbind(162 * cos(seq(0, 2 * pi, len = 1000)),
??????????????? 108 * sin(seq(0, 2 * pi, len = 1000)))
??????????? plot(c(0, 400), c(0, 400), type = "n", axes = F,????
<<<<<<<<<<<<<<<<<<==============??
???????????? ylab = "", xlab = "")
??????????? polygon(relocate_elp(elps, 45, 130, 170))
??????????? polygon(relocate_elp(elps, 45, 200, 200))
...........
###==============================================================================
_________________________________________________________________
[[elided Hotmail spam]]
D24727::T:WLMTAGL:ON:WL:en-US:WWL_WIN_myidea:102009