playwith (version 0.9-54)

playSelectData: Let playwith user select data points

Description

Part of the playwith Application Programming Interface.

Usage

playSelectData(playState = playDevCur(), prompt = paste("Click or drag to select data points;", "Right-click or Esc to cancel."), scales = "dynamic", multiview = TRUE, foo = playRectInput(playState, prompt = prompt, scales = scales))

Arguments

playState
a playState object representing the plot, window and device.
prompt
text to display in the prompt.
scales
the default allows the user to hold Shift while dragging, to constrain the selection to x or y scales. Otherwise this should be one or more of "x" and "y", specifying which axes to select along.
multiview
to return a matrix of x and y when the plot contains multiple positions for the same points (e.g. splom).
foo
rectangular plot region structure, usually generated interactively.

Value

playSelectData returns NULL if the user cancelled (e.g. by right-clicking). Otherwise a list with:
space
character, specifies the plot space in which data points were selected. See the space argument to playDo.
subscripts
indices of the data points selected. This relies on the data being guessed correctly from the plot call, unless data.points was specified explicitly.
x, y
values of the selected data points.
is.click
logical, whether it was a click (otherwise a drag).
pos
position of click relative to the closest point, as in the pos argument to text. If is.click is false, this is NULL.
...
as well as all the other elements returned by playRectInput.

Details

playSelectData is similar to identify. The user is prompted to click or drag to select data points. If a click, the nearest point is selected, if it is within 11 points. If it is a drag, all points within the rectangular region are selected. Note that data points can be selected from one panel of a multi-panel lattice plot without specifying the panel beforehand.

See Also

playRectInput, playwith.API

Examples

Run this code
if (interactive()) {

library(lattice)
playwith(xyplot(Sepal.Width ~ Petal.Width | Species, data = iris))
playSelectData()

}

Run the code above in your browser using DataCamp Workspace