Dear Jim, first of all, thank you very much :)
can you please explain me how to use split.screen? I’m felling so silly, I could not run your example because of x11(width=10,height=4). I already installed package XQuartz because X11 library was missing , nonetheless, after I have installed it, “ Error in .External2(C_X11, d$display, d$width, d$height, d$pointsize, : unable to start device X11 In addition: Warning message: In x11(width = 10, height = 4) : unable to open connection to X11 display ‘'" I didn’t started the x11 server on my mac ;) Now I got the graphs ;) I attach my previous graphs and my data, so you can see :) I’m very naive and new in R :( Thanks again for your help ;) Atenciosamente, Rosa Oliveira Atenciosamente, Rosa Oliveira -- ____________________________________________________________________________ Rosa Celeste dos Santos Oliveira, E-mail: rosit...@gmail.com Tlm: +351 939355143 Linkedin: https://pt.linkedin.com/in/rosacsoliveira ____________________________________________________________________________ "Many admire, few know" Hippocrates > On 08 Jul 2015, at 11:20, Jim Lemon <drjimle...@gmail.com> wrote: > > Hi Rosa, > As you are using base graphics, here is an example that might be of > use. As we don't have access to your data, I have used something > similar to the toy data in the example for the "panes" function. This > could be done better using the "split.screen" function, so let me know > if you would like an example using that. > > library(plotrix) > # start a wide plotting device > x11(width=10,height=4) > y<-runif(100) > oldpar<-panes(matrix(1:6,nrow=2,byrow=TRUE),widths=c(1,1,1.7)) > par(mar=c(0,2,1.8,0)) > boxplot(y,axes=FALSE) > axis(2) > box() > par(mar=c(0,0,1.8,0)) > tab.title("Boxplot of y",tab.col="#88dd88",cex=1) > y_hist<-hist(y,axes=FALSE,breaks=seq(0,1,length.out=5)) > box() > tab.title("Histogram of y",tab.col="#dd8800",cex=1) > par(mar=c(0,0,1.8,12)) > pie(y_hist$counts,col=2:9) > tab.title("Pie chart of y categories",tab.col="#8888dd",cex=1) > box() > par(mar=c(2,2,1.8,0)) > plot(y,xaxs="i",xlim=c(0,101),axes=FALSE,col=2:9) > axis(2) > box() > tab.title("Scatterplot of y",tab.col="#aabbcc",cex=1) > par(mar=c(2,0,1.8,0)) > plot(sort(y),xaxs="i",xlim=c(0,101),axes=FALSE,col=2:9) > box() > tab.title("Scatterplot of y sorted",tab.col="#ddbc44",cex=1) > # center the title at the middle of the fifth plot > mtext("Overall title of plot",side=1,line=0.8,cex=1.5) > par(mar=c(2,0,1.8,12)) > plot(diff(y),xaxs="i",xlim=c(0,100),axes=FALSE,col=2:9) > axis(4) > box() > tab.title("Scatterplot of diff(y)",tab.col="#ff33cc",cex=1) > legend(115,1.8, > c("Boxplot","Histogram","Pie chart","Scatterplot","Sort","Diff"), > fill=c("#88dd88","#dd8800","#8888dd","#aabbcc","#ddbc44","#ff33cc"), > xpd=NA) > > Jim > > > > > On Wed, Jul 8, 2015 at 1:05 PM, David Winsemius <dwinsem...@comcast.net> > wrote: >> >> On Jul 7, 2015, at 2:45 PM, Rosa Oliveira wrote: >> >>> Iam trying to plot 6 graphs in one single plot and I was able to, >>> nonetheless I wanted that all graphs had just 1 common legend, as the >>> legend is the same for all the 6 graphs and there is no sense in repeating >>> it 6 times and even more, the legends in each graph sometimes don’t fit the >>> graph. >>> >>> Is there a way to put just one legend for all the 6 graphs ate the same >>> time? >>> >>> I was told to use a trellis graph, but after days of trying to do that I >>> wasn’t able to. >>> >>> Can anyone help me? >>> >>> >>> library(ggplot2) >>> library(reshape) >> >> >>> library(lattice) >> >> Why did you load those packages above? As far as I can see you did not use >> any lattice or ggplot2 functions. (Also see no reshape or reshape2 functions >> in use.) >> >>> par(mfrow=c(2,3)) >>> mse.alpha1 <-read.csv(file="graphs_mse_alpha1.csv",head=TRUE,sep=",") >> >> And there you lose us. We are unable to see your data. The `legend` function >> can put the legend anywhere. You may need to set par(xpd=TRUE) if the >> location is outside the current plot area. If you wnated just one legend >> then you mus ask yourself why you are issuing multiple legend calls. I see >> the token-`legend` a total of 12 times in the code below. >> >> >>> attach(mse.alpha1) >>> names(mse1000.alpha1) >>> mse.alpha2 <-read.csv(file="graphs_mse_alpha2.csv",head=TRUE,sep=",") >>> attach(mse.alpha2) >>> names(mse.alpha2) >>> nsample==50 >>> >>> plot(mse.alpha1$lambda[mse.alpha1$nsample==50], >>> mse.alpha1$mse.naive[mse.alpha1$nsample==50], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,1), cex.lab=1.5 >>> ) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample==50],mse.alpha1$mse.RegCal[mse.alpha1$nsample==50],col=2,lty=2) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample==50],mse.alpha1$mse.PL[mse.alpha1$nsample==50],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[1])), >>> cex.main=1.5) >>> title("\n\n sample size=50") >>> legend(.7,1, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >>> plot(mse.alpha1$lambda[mse.alpha1$nsample==250], >>> mse.alpha1$mse.naive[mse.alpha1$nsample==250], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,1), cex.lab=1.5 >>> ) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample==250],mse.alpha1$mse.RegCal[mse.alpha1$nsample==250],col=2,lty=2) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample==250],mse.alpha1$mse.PL[mse.alpha1$nsample==250],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[1])), >>> cex.main=1.5) >>> title("\n\n sample size=250") >>> legend(.7,1, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >>> >>> plot(mse.alpha1$lambda[mse.alpha1$nsample==1000], >>> mse.alpha1$mse.naive[mse.alpha1$nsample== 1000], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,1), cex.lab=1.5 >>> ) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample== >>> 1000],mse.alpha1$mse.RegCal[mse.alpha1$nsample== 1000],col=2,lty=2) >>> lines(mse.alpha1$lambda[mse.alpha1$nsample== >>> 1000],mse.alpha1$mse.PL[mse.alpha1$nsample== 1000],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[1])), >>> cex.main=1.5) >>> title("\n\n sample size=1000") >>> legend(.7,1, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >>> plot(mse.alpha2$lambda[mse.alpha2$nsample==50], >>> mse.alpha2$mse.naive[mse.alpha2$nsample==50], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,.17), cex.lab=1.5 >>> ) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample==50],mse.alpha2$mse.RegCal[mse.alpha2$nsample==50],col=2,lty=2) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample==50],mse.alpha2$mse.PL[mse.alpha2$nsample==50],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[2])), >>> cex.main=1.5) >>> title("\n\n sample size=50") >>> legend(.7,.17, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >>> >>> plot(mse.alpha2$lambda[mse.alpha2$nsample==250], >>> mse.alpha2$mse.naive[mse.alpha2$nsample==250], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,.17), cex.lab=1.5 >>> ) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample==250],mse.alpha2$mse.RegCal[mse.alpha2$nsample==250],col=2,lty=2) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample==250],mse.alpha2$mse.PL[mse.alpha2$nsample==250],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[2])), >>> cex.main=1.5) >>> title("\n\n sample size=250") >>> legend(.7,.17, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >>> plot(mse.alpha2$lambda[mse.alpha2$nsample==1000], >>> mse.alpha2$mse.naive[mse.alpha2$nsample== 1000], >>> xlab=expression(paste(lambda)),ylab="MSE",type="l",col=4,lty=4, >>> xlim=c(.6,1), ylim=c(0,.17), cex.lab=1.5 >>> ) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample== >>> 1000],mse.alpha2$mse.RegCal[mse.alpha2$nsample==250],col=2,lty=2) >>> lines(mse.alpha2$lambda[mse.alpha2$nsample== >>> 1000],mse.alpha2$mse.PL[mse.alpha2$nsample== 1000],col=3,lty=3) >>> title ( expression (paste ("Mean squared error for ", alpha[2])), >>> cex.main=1.5) >>> title("\n\n sample size=1000") >>> legend(.7,.17, legend= c("Naive", "Regression Calibration", "Pseudo >>> Likelihood"), bty = "n",col=c(4,2,3),lty=c(4,2,3)) >>> >> >> >> >> David Winsemius >> Alameda, CA, USA >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.