| Arrows {shape} | R Documentation |
adds one or more arrows to a plot; arrowhead shape is either curved, a triangle, a circle or simple
Arrows(x0, y0, x1, y1, code=2, arr.length=0.4,
arr.width=arr.length/2, arr.adj=0.5, arr.type="curved",
segment=TRUE, lcol="black", lty=1, arr.col=lcol, ...)
x0 |
x-coordinates of points *from* which to draw arrows; either one value or a vector |
y0 |
y-coordinates of points *from* which to draw arrows; either one value or a vector |
x1 |
x-coordinates of points *to* which to draw arrows; either one value or a vector |
y1 |
y-coordinates of points *to* which to draw arrows; either one value or a vector |
code |
integer code determining kind of arrows to draw |
arr.length |
approximate length of arrowhead, in cm; either one value or a vector |
arr.width |
approximate width of arrowhead, in cm; either one value or a vector |
arr.adj |
0,0.5,1 specifying the adjustment of the arrowhead |
arr.type |
type of arrowhead to draw, one of "simple","curved","triangle","circle" |
segment |
logical specifying whether or not to draw line segments |
lcol |
line color specifications; either one value or a vector |
lty |
line type specifications; either one value or a vector |
arr.col |
color of arrowhead; either one value or a vector |
... |
arguments passed to lines or segments function |
x0, y0, x1, y1, arr.length, arr.width, arr.adj, lcol, lty and arr.col can be a vector, of the same length.
For each 'i', an arrow is drawn between the point '(x0[i], y0[i])' and the point '(x1[i],y1[i])'.
The type of the arrowhead is set with "arr.type" which can take the values:
Karline Soetaert <k.soetaert@nioo.knaw.nl>
arrows the comparable R function
Arrowhead
xlim <- c(-5 ,5)
ylim <- c(-10,10)
plot(0,type="n",xlim=xlim,ylim=ylim,main="Arrows")
x0<-runif(100,xlim[1],xlim[2])
y0<-runif(100,ylim[1],ylim[2])
x1<-x0+runif(100,-1,1)
y1<-y0+runif(100,-1,1)
Arrows(x0,y0,x1,y1,arr.length=runif(100),code=2,arr.type="curved",
arr.col=1:100,lcol=1:100)
plot(0,type="n",xlim=xlim,ylim=ylim,main="Arrows")
x0<-runif(100,xlim[1],xlim[2])
y0<-runif(100,ylim[1],ylim[2])
x1<-x0+runif(100,-1,1)
y1<-y0+runif(100,-1,1)
Arrows(x0,y0,x1,y1,arr.length=0.2,code=3,arr.type="circle",
arr.col="grey")
curve(expr=sin(x),0,2*pi+0.25,main="Arrows")
x <- seq(0,2*pi,length.out=10)
xd <- x+0.025
Arrows(x,sin(x),xd,sin(xd),type="triangle",arr.length=0.5,segment=FALSE)
xx <- seq(0,10*pi,length.out=1000)
plot(sin(xx)*xx,cos(xx)*xx,type="l",axes=FALSE,xlab="",ylab="",main="Arrows")
x <- seq(0,10*pi,length.out=20)
x1 <- sin(x)*x
y1 <- cos(x)*x
xd <- x+0.01
x2 <- sin(xd)*xd
y2 <- cos(xd)*xd
Arrows(x1,y1,x2,y2,arr.type="curved",arr.length=0.4,segment=FALSE,
code=1,arr.adj=0.5 )