rect
Draw One or More Rectangles
Description
rect
draws a rectangle (or sequence of rectangles) with the given coordinates, fill and border colors.
Usage
rect(xleft, ybottom, xright, ytop, density = NULL, angle = 45, col = NA, border = NULL, lty = par("lty"), lwd = par("lwd"), ...)
Arguments
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. |
density | the density of shading lines, in lines per inch. The default value of |
angle | angle (in degrees) of the shading lines. |
col | color(s) to fill or shade the rectangle(s) with. The default |
border | color for rectangle border(s). The default means |
lty | line type for borders and shading; defaults to |
lwd | line width for borders and shading. Note that the use of |
... | graphical parameters such as |
Details
The positions supplied, i.e., xleft, ...
, are relative to the current plotting region. If the x-axis goes from 100 to 200 then xleft
must be larger than 100 and xright
must be less than 200. The position vectors will be recycled to the length of the longest.
It is a graphics primitive used in hist
, barplot
, legend
, etc.
See Also
box
for the standard box around the plot; polygon
and segments
for flexible line drawing.
par
for how to specify colors.
Examples
require(grDevices) ## set up the plot region: op <- par(bg = "thistle") plot(c(100, 250), c(300, 450), type = "n", xlab = "", ylab = "", main = "2 x 11 rectangles; 'rect(100+i,300+i, 150+i,380+i)'") i <- 4*(0:10) ## draw rectangles with bottom left (100, 300)+i ## and top right (150, 380)+i rect(100+i, 300+i, 150+i, 380+i, col = rainbow(11, start = 0.7, end = 0.1)) rect(240-i, 320+i, 250-i, 410+i, col = heat.colors(11), lwd = i/5) ## Background alternating ( transparent / "bg" ) : j <- 10*(0:5) rect(125+j, 360+j, 141+j, 405+j/2, col = c(NA,0), border = "gold", lwd = 2) rect(125+j, 296+j/2, 141+j, 331+j/5, col = c(NA,"midnightblue")) mtext("+ 2 x 6 rect(*, col = c(NA,0)) and col = c(NA,\"m..blue\")") ## an example showing colouring and shading plot(c(100, 200), c(300, 450), type= "n", xlab = "", ylab = "") rect(100, 300, 125, 350) # transparent rect(100, 400, 125, 450, col = "green", border = "blue") # coloured rect(115, 375, 150, 425, col = par("bg"), border = "transparent") rect(150, 300, 175, 350, density = 10, border = "red") rect(150, 400, 175, 450, density = 30, col = "blue", angle = -30, border = "transparent") legend(180, 450, legend = 1:4, fill = c(NA, "green", par("fg"), "blue"), density = c(NA, NA, 10, 30), angle = c(NA, NA, 30, -30)) par(op)
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.