Identify Points in a Scatter Plot

Usage

identify(x, y = NULL, labels = seq(along = x), pos = FALSE,
         n = length(x), plot = TRUE, offset = 0.5, ...)

Arguments

x,y coodinates of points in a scatter plot. Alternatively, any object which can defines coordinates (a plotting structure, time series etc.) can be given as x and y left undefined.
labels an optional vector, the same length as x and y, giving labels for the points.
pos if pos is TRUE, a component is added to the return value which indicates where text was plotted relative to each identified point (1=below, 2=left, 3=above and 4=right).
n the maximum number of points to be identified. (Not yet implemented.)
plot if plot is TRUE, the labels are printed at the points and if FALSE they are omitted. (Not yet implemented.)
offset the distance (in character widths) which separates the label from identified points. (Not yet implemented.)
... further arguments to par(.).

Description

This function reads the position of the graphics pointer when the (first) mouse button is pressed. It then searches the coordinates given in x and y for the point closest to the pointer. If this point is close to the pointer, its index will be returned as part of the value of the call.

The following, and the n, ploy and offset arguments are not yet implented: If in addition, plot is TRUE the point is labelled with the corresponding element of text.

The labels are placed either below, to the left, above or to the right of the identified point, depending on where the cursor was.

The identification process is terminated by pressing any mouse button other than the first, or by clicking outside the graphics window.

Value

If pos is FALSE, identify returns an integer vector containing the indexes of the identified points. If pos is TRUE, identify returns a list containing a component ind, indicating which points were an identified and a component pos, indicating where the labels were placed relative to the identified points.


[Package Contents]