rect                package:graphics                R Documentation

_D_r_a_w _O_n_e _o_r _M_o_r_e _R_e_c_t_a_n_g_l_e_s

_D_e_s_c_r_i_p_t_i_o_n:

     'rect' draws a rectangle (or sequence of rectangles) with the
     given coordinates, fill and border colors.

_U_s_a_g_e:

     rect(xleft, ybottom, xright, ytop, density = NULL, angle = 45,
          col = NA, border = NULL, lty = par("lty"), lwd = par("lwd"),
          ...)

_A_r_g_u_m_e_n_t_s:

   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 'NULL' means that no shading lines are drawn. A zero
          value of 'density' means no shading lines whereas negative
          values (and 'NA') suppress shading (and so allow color
          filling).

   angle: angle (in degrees) of the shading lines.

     col: color(s) to fill or shade the rectangle(s) with. The default
          'NA' (or also 'NULL') means do not fill, i.e., draw
          transparent rectangles, unless 'density' is specified.

  border: color for rectangle border(s).  The default means
          'par("fg")'.  Use 'border = NA' to omit borders. If there are
          shading lines, 'border = TRUE' means use the same colour for
          the border as for the shading lines.

     lty: line type for borders and shading; defaults to '"solid"'.

     lwd: line width for borders and shading.

     ...: graphical parameters such as 'xpd', 'lend', 'ljoin' and
          'lmitre' can be given as arguments.

_D_e_t_a_i_l_s:

     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.

_S_e_e _A_l_s_o:

     'box' for the standard box around the plot; 'polygon' and
     'segments' for flexible line drawing.

     'par' for how to specify colors.

_E_x_a_m_p_l_e_s:

     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=.7,end=.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)

