Hi Robert, Maybe you can use something simple like this: zoomInScatterPlot<-function(x=NULL,y,...) { if(is.null(x)) x<-1:length(y) plot(x,y,...) xylim<-par("usr") boxed.labels(xylim[1]-diff(xylim[1:2])/20, xylim[3]-diff(xylim[3:4])/10,"Done") xy1<-locator(1) done<-FALSE while(!done) { if(xy1$x < xylim[1]) done<-TRUE else { xy2<-locator(1) xlim<-c(xy1$x,xy2$x) ylim<-c(xy1$y,xy2$y) plot(x,y,xlim=xlim,ylim=ylim,...) xylim<-par("usr") boxed.labels(xylim[1]-diff(xylim[1:2])/20, xylim[3]-diff(xylim[3:4])/10,"Done") xy1<-locator(1) } } } zoomInScatterPlot(rnorm(30),rnorm(30))
On Sat, Apr 25, 2020 at 4:40 PM Robert Dodier <robert.dod...@gmail.com> wrote: > > Hi, > > I am making some plots with plot() which have a fair number of points > (thousands) and I would like to be able to interactively select a > region of the plot and zoom in on it. I tried the zoom package which > has the function zm() but I found that it was unworkably slow to > refresh the display. I guess I can set the x and y range via xlim and > ylim but I was hoping to do it interactively. Does someone have a > suggestion for that? > > I looked at ggplot2 but I wasn't able to find something about > interactive zooming, only noninteractive via plot limits. Perhaps I > have overlooked something there? > > I have searched the mailing list archive and web pages in general but > I haven't found anything other than zm(). Thank you in advance for > your help, I appreciate it very much. > > best, > > Robert Dodier > > ______________________________________________ > 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.