Click on a map (plot) to get values of a Raster* or Spatial* object at that location; and optionally the coordinates and cell number of the location. For SpatialLines and SpatialPoints you need to click twice (draw a box).

# S4 method for Raster
click(x, n=Inf, id=FALSE, xy=FALSE, cell=FALSE, type="n", show=TRUE, ...)

# S4 method for SpatialGrid
click(x, n=1, id=FALSE, xy=FALSE, cell=FALSE, type="n", ...)

# S4 method for SpatialPolygons
click(x, n=1, id=FALSE, xy=FALSE, type="n", ...)

# S4 method for SpatialLines
click(x, ...)

# S4 method for SpatialPoints
click(x, ...)



Raster*, or Spatial* object (or missing)


number of clicks on the map


Logical. If TRUE, a numeric ID is shown on the map that corresponds to the row number of the output


Logical. If TRUE, xy coordinates are included in the output


Logical. If TRUE, cell numbers are included in the output


One of "n", "p", "l" or "o". If "p" or "o" the points are plotted; if "l" or "o" they are joined by lines. See ?locator


logical. Print the values after each click?


additional graphics parameters used if type != "n" for plotting the locations. See ?locator


The value(s) of x at the point(s) clicked on (or touched by the box drawn).


The plot only provides the coordinates for a spatial query, the values are read from the Raster* or Spatial* object that is passed as an argument. Thus you can extract values from an object that has not been plotted, as long as it spatialy overlaps with with the extent of the plot.

Unless the process is terminated prematurely values at at most n positions are determined. The identification process can be terminated by clicking the second mouse button and selecting 'Stop' from the menu, or from the 'Stop' menu on the graphics window.

See also


if (FALSE) {
 r <- raster(system.file("external/test.grd", package="raster"))
 # now click on the plot (map)