playPointInput {playwith} | R Documentation |
Part of the playwith
Application Programming Interface.
playPointInput(playState, prompt = "Click on the plot") playLineInput(playState, prompt = "Click and drag to define a line") playRectInput(playState, prompt = "Click and drag to define a rectangular region", scales = c("x", "y"))
playState |
a playState object representing the plot, window and device. |
prompt |
text to display in the prompt. |
scales |
one or more of "x" and "y" ,
constraining the dimensions of the region to select.
E.g. if scales="x" then a section along the x-axis is selected,
as might be appropriate for a time series.
|
playPointInput
is similar to locator
, but
returns native coordinates in whichever plot space was clicked on.
Device coordinates and normalised device coordinates are also available.
playRectInput
and playLineInput
allow the user to
interactively draw a rectangle or line.
All these functions return NULL
if the user cancelled (e.g. by right-clicking).
The return value is a list with:
|
character, specifies the plot space in which the user clicked or dragged.
See the space argument to playDo .
|
|
native coordinates of the point or shape in space .
A list with numeric vectors x and y .
For a rectangle or line, these are length 2 where the first element
refers to the start of the drag motion. For a point these are length 1.
If space is "page" , this is NULL .
|
|
device coordinates of the point or shape (pixels). |
|
normalised device coordinates of the point or shape. |
|
logical, whether it was a click
(so probably should not be treated as a rectangle or line).
This is not returned by playPointInput .
|
|
a flag representing which modifier keys were
pressed during the click (or at the end of a drag).
E.g. to test for Shift key:
if (foo$modifiers & GdkModifierType["shift-mask"]) .
See enums-and-flags .
|
Felix Andrews felix@nfrac.org
if (interactive()) { library(lattice) playwith(xyplot(Sepal.Width ~ Petal.Width | Species, data = iris)) playPointInput(playDevCur()) playRectInput(playDevCur()) }