rawXLim: Get or set current plot limits

Description Usage Arguments Details Value Author(s) See Also Examples

Description

Part of the playwith Application Programming Interface.

Usage

1
2
3
4
5
6
7

Arguments

playState

a playState object representing the plot, window and device.

space

character, the plot space for which to get or set limits. See the space argument to playDo; however, in this case, space="plot" will always return a value: if it is a Lattice plot with multiple panels, one will be chosen arbitrarily.

value

numeric length 2, the new nominal x or y limits (for xlim or ylim plot arguments).

xy

list with at least one of the elements x and y (as numeric).

Details

rawXLim returns the current plot limits, on a numeric, linear scale. This is as simple as: playDo(playState, space=space, list( x=convertX(unit(0:1, "npc"), "native", valueOnly=TRUE), y=convertY(unit(0:1, "npc"), "native", valueOnly=TRUE))) except that the default space="plot" will always return a value: if it is a Lattice plot with multiple panels, one will be chosen arbitrarily.

The assignment form converts a numeric range, in the raw native plot coordinates, to values suitable for the plot xlim argument: it may convert back from log-transformed scales, and convert to factor levels if necessary. It then updates the current plot call with the new value.

spaceCoordsToDataCoords converts from the native viewport coordinates to the data coordinates, which simply involves converting from a log scale if necessary. dataCoordsToSpaceCoords is the inverse case: applying a log transformation if necessary. It used to refer to the position of data points in the viewport.

Value

the extractor form returns the x or y plot limits as numeric length 2.

Author(s)

Felix Andrews felix@nfrac.org

See Also

playwith.API

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
if (interactive()) {

playwith(plot(1:10, log="x"))
playState <- playDevCur()
rawXLim(playState)  # -0.04  1.04
rawXLim(playState) <- c(0, 2)
playReplot(playState)
## now xlim=c(1, 100)
(rawx <- rawXLim(playState))  # -0.08  2.08

spaceCoordsToDataCoords(playState, list(x=rawx))
dataCoordsToSpaceCoords(playState, list(x=1:10))

}

floybix/playwith documentation built on May 16, 2019, 1:25 p.m.