curvedarrow {diagram} | R Documentation |
Connects two points with an ellipsoid line and adds an arrowhead at a certain distance
curvedarrow(from, to, lwd=2, lty=1, lcol="black", arr.pos=0.5, curve=1, dr=0.01, endhead=FALSE, ...)
from |
coordinates (x,y) of the point *from* which to draw arrow. |
to |
coordinates (x,y) of the point *to* which to draw arrow. |
lwd |
line width. |
lty |
line type. |
lcol |
line color. |
arr.pos |
relative position of arrowhead. |
curve |
relative size of curve (fraction of points distance) - see details. |
dr |
size of segments, in radians, to draw ellipse (decrease for smoother). |
endhead |
if TRUE : the arrow line stops at the arrowhead;
default = FALSE .
|
... |
arguments passed to function Arrows .
|
A curved arrow is drawn between two points '(from, to)'
The position of the arrowhead, is set with arr.pos
, a value between
0(start point) and 1(endpoint)
The line curvature is set with curve
which expresses the ellipse
radius as a fraction of the distance between the two points.
For instance, curve=0.5
will draw an ellepse with small radius
half of a circle.
The type of the arrowhead is set with arr.type
which can take
the values:
see Arrowhead
from package shape for details on
arrow head
default |
coordinates (x,y) where arrowhead is drawn. |
Karline Soetaert <k.soetaert@nioo.knaw.nl>.
straightarrow
, segmentarrow
,
bentarrow
,
selfarrow
, treearrow
, splitarrow
,
arrows
: the comparable R function,
Arrows
: more complicated arrow function from package
shape.
openplotmat(main="curvedarrow") pos <-coordinates(pos=4,my=0.2) text(pos,LETTERS[1:4],cex=2) for (i in 1:3) curvedarrow(from=pos[1,]+c(0,-0.05),to=pos[i+1,]+c(0,-0.05), curve=0.5,arr.pos=1) for (i in 1:3) curvedarrow(from=pos[1,]+c(0,0.05),to=pos[i+1,]+c(0,0.05), curve=-0.25,arr.adj=1,arr.pos=0.5)