This function is very similar to the
rasterImage function. It works with every loon plot
which is based on the cartesian coordinate system.
Usage
l_layer_rasterImage(
widget,
image,
xleft,
ybottom,
xright,
ytop,
angle = 0,
interpolate = FALSE,
parent = "root",
index = "end",
...
)Arguments
- widget
widget path as a string or as an object handle
- image
a
rasterobject, or an object that can be coerced to one byas.raster.- xleft
a vector (or scalar) of left x positions.
- ybottom
a vector (or scalar) of bottom y positions.
- xright
a vector (or scalar) of right x positions.
- ytop
a vector (or scalar) of top y positions.
- angle
angle of rotation (in degrees, anti-clockwise from positive x-axis, about the bottom-left corner).
- interpolate
a logical vector (or scalar) indicating whether to apply linear interpolation to the image when drawing.
- parent
a valid Tk parent widget path. When the parent widget is specified (i.e. not
NULL) then the plot widget needs to be placed using some geometry manager liketkpackortkplacein order to be displayed. See the examples below.- index
position among its siblings. valid values are 0, 1, 2, ..., 'end'
- ...
argumnets forwarded to
l_layer_line
Examples
if(interactive()){
plot(1,1, xlim = c(0,1), ylim=c(0,1))
mat <- matrix(c(0,0,0,0, 1,1), ncol=2)
rasterImage(mat, 0,0,1,1, interpolate = FALSE)
p <- l_plot()
l_layer_rasterImage(p, mat, 0,0,1,1)
l_scaleto_world(p)
image <- as.raster(matrix(0:1, ncol = 5, nrow = 3))
p <- l_plot(showScales=TRUE, background="thistle", useLoonInspector=FALSE)
l_layer_rasterImage(p, image, 100, 300, 150, 350, interpolate = FALSE)
l_layer_rasterImage(p, image, 100, 400, 150, 450)
l_layer_rasterImage(p, image, 200, 300, 200 + 10, 300 + 10,
interpolate = FALSE)
l_scaleto_world(p)
# from examples(rasterImage)
# set up the plot region:
op <- par(bg = "thistle")
plot(c(100, 250), c(300, 450), type = "n", xlab = "", ylab = "")
rasterImage(image, 100, 300, 150, 350, interpolate = FALSE)
rasterImage(image, 100, 400, 150, 450)
rasterImage(image, 200, 300, 200 + 10, 300 + 10,
interpolate = FALSE)
}
