# [R] split.screen to draw graphs - ggplot2 and lattice (can't slip in 4 cells)

Rosa Oliveira rosita21 at gmail.com
Sun Sep 6 16:06:56 CEST 2015

```Dear all,

I need your urgent help J

I’m naïve, and I’m pretty sure my doubt is very simple to solve, but I’m not getting it.

I used the following code to produce my research graphs, nonetheless, is this problem, I do not have 6 graphs (1 – 6),

#   3   4   5

#                2

#   6   7   8

but only 4,instead.  So, I need to reformulate the code, just to

#   3   4

#                2

#   6   7

I suppose I have to change something in the split.screen code, because nowadays, my “third” column is blank J

I attach the code:

library(ggplot2)

library(reshape)

library(lattice)

quartz(width=10,height=5)

split.screen(figs=matrix(c(0,0.4,0.5,1,

0.4,0.7,0.5,1,

0.7,1,0.5,1,

0,0.4,0,0.5,

0.4,0.7,0,0.5,

0.7,1,0,0.5),nrow=6,byrow=TRUE),

screen=1)

screen(3)

par(mar=c(0,3.5,3,0))

# now the second set

n250<-mean.alpha1\$nsample==250

matplot(x=mean.alpha1\$lambda[n250],y=mean.alpha1[n250,3:5],

type="l",pch=1:3,col=c(4,2,3),xaxt="n",ylim=c(-1.2, -0.25),main="nsample=250",ylab="", cex.main=1)

abline(h = -1, col = "gray60")

mtext(expression(paste("mean av. for  ",alpha)),side=2,line=2, cex.main=1)

screen(4)

par(mar=c(0,0,3,0))

# now the second set

n250<-mean.alpha1\$nsample==1000

matplot(x=mean.alpha1\$lambda[n1000],y=mean.alpha2[n1000,3:5],

type="l",pch=1:3,col=c(4,2,3),xaxt="n",yaxt="n",ylim=c(-1.2, -0.25),main="nsample=1000", cex.main=1)

abline(h = -1, col = "gray60")

screen(6)

par(mar=c(3,3.5,0,0))

# now the second set

n250<-mean.alpha2\$nsample==250

matplot(x=mean.alpha2\$lambda[n250],y=mean.alpha2[n250,3:5],

type="l",pch=1:3,col=c(4,2,3),ylim=c(-.6, -.35),ylab="")

abline(h = -.5, col = "gray60")

mtext(expression(paste(lambda)),side=1,line=2, cex.main=1.5)

mtext(expression(paste("mean av. for  ",alpha)),side=2,line=2, cex.main=1.5)

screen(7)

par(mar=c(3,0,0,0))

# now the second set

n1000<-mean.alpha2\$nsample==1000

matplot(x=mean.alpha2\$lambda[n1000],y=mean.alpha2[n1000,3:5],

type="l",pch=1:3,col=c(4,2,3),yaxt="n",ylim=c(-.6, -.35))

abline(h = -.5, col = "gray60")

mtext(expression(paste(lambda)),side=1,line=2, , cex.main=1.5)

screen(2)

par(mar=c(0,0,0,0))

# plot an empty plot to get the coordinates

plot(0:1,0:1,type="n",axes=FALSE)

legend(0,0.6,c("OLS", "GLS", "Reg. Cal.", "true coefficient"),bty = "n", lty=1:3,col=c(4,2,3,"gray60"),xpd=TRUE)

close.screen(all=TRUE)

BEST,

RO

Atenciosamente,
Rosa Oliveira

--
____________________________________________________________________________

Rosa Celeste dos Santos Oliveira,

E-mail: rosita21 at gmail.com
Tlm: +351 939355143