Here is one approach that works on Windows (but not other platforms):

HWidentify <- function(x,y,label=seq_along(x), xlab=deparse(substitute(x)),
                                ylab=deparse(substitute(y)), ...) {

        plot(x,y,xlab=xlab, ylab=ylab,...)

        dx <- grconvertX(x,to='ndc')
        dy <- grconvertY(y,to='ndc')
        
        mm <- function(buttons, xx, yy) {
                d <- (xx-dx)^2 + (yy-dy)^2
                if ( all( d > .01 ) ){
                        plot(x,y,xlab=xlab,ylab=ylab,...)
                        return()
                }
                w <- which.min(d) 
                plot(x,y,xlab=xlab,ylab=ylab,...)
                points(x[w],y[w], cex=2, col='red')
                text(grconvertX(xx,from='ndc'),grconvertY(yy,from='ndc'), 
                        label[w], col='green', adj=c(0,0))
                return()
        }

        md <- function(buttons, xx, yy) {
                if (any(buttons=='2')) return(1)
                return()
        }

        getGraphicsEvent('Right Click to exit', onMouseMove = mm, 
onMouseDown=md) 
        invisible()
}

tmpx <- runif(25)
tmpy <- rnorm(25)
HWidentify(tmpx,tmpy,LETTERS[1:25], pch=letters)

Hope this helps,

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.s...@imail.org
801.408.8111


> -----Original Message-----
> From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-
> project.org] On Behalf Of Hitesh Singla
> Sent: Tuesday, August 11, 2009 10:50 PM
> To: r-help@r-project.org
> Subject: [R] How to label and unlabel points on scatterplot with mouse
> pointer
> 
> Dear all,
> 
> How can I label/unlabel points on scatterplot with mouse pointer. As
> the
> mouse approches near to point, it should label the closest point, then
> unlabel when it moves away.
> 
> How can I do in R? I be very thankful.
> 
> Thanks and Regards,
> 
> Hitesh Singla
> 
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
> 
> ______________________________________________
> R-help@r-project.org mailing list
> 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
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.

Reply via email to