arrows                 package:base                 R Documentation

Add Arrows to a Plot

Description:

     Draw arrows between pairs of points.

Usage:

     arrows(x0, y0, x1, y1, length = 0.25, angle = 30, code = 2,
            col = par("fg"), lty = NULL, lwd = par("lwd"), xpd = NULL)

Arguments:

  x0, y0: coordinates of points from which to draw.

  x1, y1: coordinates of points to which to draw.

  length: length of the edges of the arrow head (in inches).

   angle: angle from the shaft of the arrow to the edge of the arrow
          head.

    code: integer code, determining kind of arrows to be drawn.

col, lty, lwd, xpd: usual graphical parameters as in `par'.

Details:

     For each `i', an arrow is drawn between the point `(x0[i], y0[i])'
     and the point `(x1[i],y1[i])'.

     If `code=2' an arrowhead is drawn at `(x0[i],y0[i])' and if
     `code=1' an arrowhead is drawn at `(x1[i],y1[i])'.  If `code=3' a
     head is drawn at both ends of the arrow.  Unless `length = 0',
     when no head is drawn.

     The graphical parameters `col' and `lty' can be used to specify a
     color and line texture for the line segments which make up the
     arrows (`col' may be a vector).

     The direction of a zero-length arrow is indeterminate, and hence
     so is the direction of the arrowheads.  To allow for rounding
     error, arrowheads are omitted (with a warning) on any arrow of
     length less than 1/1000 inch.

See Also:

     `segments' to draw segments.

Examples:

     x <- runif(12); y <- rnorm(12)
     i <- order(x,y); x <- x[i]; y <- y[i]
     plot(x,y, main="arrows(.) and segments(.)")
     ## draw arrows from point to point :
     s <- seq(length(x)-1)# one shorter than data
     arrows(x[s], y[s], x[s+1], y[s+1], col= 1:3)
     s <- s[-length(s)]
     segments(x[s], y[s], x[s+2], y[s+2], col= 'pink')

