From: <Pascal.Niklaus_at_unibas.ch>

Date: Wed 07 Dec 2005 - 07:16:21 EST

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Wed Dec 07 07:58:35 2005

Date: Wed 07 Dec 2005 - 07:16:21 EST

Thanks for all your help.

For documentation (I'm probably not the last one searching R-help for a solution to this problem), here is what I believe works best for the intended purouse:

x<-0:10;

y<-x^4;

library(gridBase)

X11(width=8,height=8)

# produce outer ("main") plot

plot(x,y,xaxs="i",yaxs="i")

vp <- baseViewports()

pushViewport(vp$inner,vp$figure,vp$plot)

# push viewport that will contain the inset

pushViewport(viewport(x=0.1,y=0.9,width=.5,height=.5,just=c("left","top")))

# now either define viewport to contain the whole inset figure

par(fig=gridFIG(),new=T) # or gridPLT() # ...or just the plotting are (coordinate system)

par(plt=gridPLT(),new=T)

# draw frame around selected area (for illustration only)

grid.rect(gp=gpar(lwd=3,col="red"))

# plot inset figure

plot(x,y,xaxs="i",yaxs="i",xlab="",ylab="")

# pop all viewports from stack

popViewport(4)

Pascal Niklaus

> > -----Original Message-----

*> > From: r-help-bounces@stat.math.ethz.ch
**> > [mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of Uwe Ligges
**> > Sent: Tuesday, December 06, 2005 1:54 AM
**> > To: Pascal.Niklaus@unibas.ch
**> > Cc: r-help@stat.math.ethz.ch
**> > Subject: Re: [R] figure with inset
**> >
**> > Pascal.Niklaus@unibas.ch wrote:
**> >
**> > > I am trying to plot a figure within a figure (an inset that
**> > shows a closeup of
**> > > part of the data set). I have searched R-help and other
**> > sources but not found a
**> > > solution.
**> >
**> > See the examples on the grid package by Paul Murrel in R News.
**> >
**> > Uwe Ligges
**> >
**>
**> 1. Nice posting -- Your little diagram makes your question crystal clear.
**>
**> 2. Murrell's new book, R GRAPHICS, is a comprehensive resource on grid, if
**> you decide you want to do more with it.
**>
**> 3. See also ?par ... new=TRUE for a (less flexible, but perhaps adequate
**> for your needs) way to do this in R's traditional graphics system.
**>
**> Cheers,
**> Bert
**>
**>
**> >
**> > > What I would like to do is
**> > >
**> > > (1) produce a plot
**> > > (2) specify a window that will be used for the next plot
**> > (in inches or using the
**> > > coordinate system of the plot produced in (1)
**> > > (3) overlay a new plot in the window specified under (2)
**> > >
**> > > The result would be:
**> > >
**> > > +----------------------+
**> > > | |
**> > > | first plot |
**> > > | +--------+ |
**> > > | | inset | |
**> > > | +--------+ |
**> > > | |
**> > > +----------------------+
**> > >
**> > > Thank you for your help
**> > >
**> > > Pascal
**> > >
*

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Wed Dec 07 07:58:35 2005

*
This archive was generated by hypermail 2.1.8
: Wed 07 Dec 2005 - 09:37:21 EST
*