brushedPoints() returns rows from a data frame which are under a brush.
nearPoints() returns rows from a data frame which are near a click, hover,
or double-click. Alternatively, set allRows = TRUE to return all rows from
the input data with an additional column selected_ that indicates which
rows of the would be selected.
brushedPoints(
df,
brush,
xvar = NULL,
yvar = NULL,
panelvar1 = NULL,
panelvar2 = NULL,
allRows = FALSE
)nearPoints(
df,
coordinfo,
xvar = NULL,
yvar = NULL,
panelvar1 = NULL,
panelvar2 = NULL,
threshold = 5,
maxpoints = NULL,
addDist = FALSE,
allRows = FALSE
)
A data frame based on df, containing the observations selected by the
brush or near the click event. For nearPoints(), the rows will be sorted
by distance to the event.
If allRows = TRUE, then all rows will returned, along with a new
selected_ column that indicates whether or not the point was selected.
The output from nearPoints() will no longer be sorted, but you can
set addDist = TRUE to get an additional column that gives the pixel
distance to the pointer.
A data frame from which to select rows.
The data from a brush or click/dblclick/hover event
e.g. input$plot_brush, input$plot_click.
A string giving the name of the variable on the x or y axis.
These are only required for base graphics, and must be the name of
a column in df.
A string giving the name of a panel variable. For expert use only; in most cases these will be automatically derived from the ggplot2 spec.
If FALSE (the default) return a data frame containing
the selected rows. If TRUE, the input data frame will have a new
column, selected_, which indicates whether the row was selected or not.
A maximum distance (in pixels) to the pointer location.
Rows in the data frame will be selected if the distance to the pointer is
less than threshold.
Maximum number of rows to return. If NULL (the default),
will return all rows within the threshold distance.
If TRUE, add a column named dist_ that contains the
distance from the coordinate to the point, in pixels. When no pointer
event has yet occurred, the value of dist_ will be NA.
For plots created with ggplot2, it is not necessary to specify the
column names to xvar, yvar, panelvar1, and panelvar2 as that
information can be automatically derived from the plot specification.
Note, however, that this will not work if you use a computed column, like
aes(speed/2, dist)). Instead, we recommend that you modify the data
first, and then make the plot with "raw" columns in the modified data.
If x or y column is a factor, then it will be coerced to an integer vector. If it is a character vector, then it will be coerced to a factor and then integer vector. This means that the brush will be considered to cover a given character/factor value when it covers the center value.
If the brush is operating in just the x or y directions (e.g., with
brushOpts(direction = "x"), then this function will filter out points
using just the x or y variable, whichever is appropriate.
plotOutput() for example usage.
if (FALSE) {
# Note that in practice, these examples would need to go in reactives
# or observers.
# This would select all points within 5 pixels of the click
nearPoints(mtcars, input$plot_click)
# Select just the nearest point within 10 pixels of the click
nearPoints(mtcars, input$plot_click, threshold = 10, maxpoints = 1)
}
Run the code above in your browser using DataLab