selfarrow {diagram} | R Documentation |
adds a circular, self-pointing arrow to a plot
Description
adds a circular arrow, from and to the same point
Usage
selfarrow(pos, lwd = 2, lty = 1, lcol = "black", arr.pos = 0.5,
path = "L", curve = c(0.1, 0.1), dr = 0.01, code = 1, ...)
Arguments
pos |
2-valued vector with coordinates (x,y) of points *from and to* which to draw arrow. |
lwd |
line width. |
lty |
line type. |
lcol |
line color. |
arr.pos |
relative position of arrowhead. |
path |
position of circle: R, L, U, D for right, left, up and down respectively. |
curve |
relative size of curve (fraction of arrow length). |
dr |
size of segments, in radians, to draw ellipse (decrease for smoother). |
code |
how to put the arrowhead. |
... |
arguments passed to function Arrows. |
Details
draws a circular arrow from and to one point
The position of the arrowhead on the circle is set with arr.pos
,
a value between 0 (at start) and 1(at end of circle)
The type of the arrowhead is set with arr.type
which can take the
values:
"none" : skips the drawing of arrows.
"simple" : uses comparable R function arrows.
"triangle": uses filled triangle.
"curved" : draws arrowhead with curved edges.
"circle" : draws circular head.
"ellipse" : draws ellepsoid head.
"T" : draws T-shaped (blunt) head.
The size of the arrow head can be specified with the arguments
arr.length
and arr.width
.
See Arrowhead
for details on arrow head.
Value
coordinates (x,y) where arrowhead is drawn
Author(s)
Karline Soetaert <karline.soetaert@nioz.nl>
See Also
straightarrow
, segmentarrow
,
curvedarrow
,
bentarrow
,treearrow
, splitarrow
,
arrows
: the comparable R function,
Arrows
: more complicated arrow function from package
shape.
Examples
openplotmat(main = "selfarrow")
pos <- coordinates(3, mx = 0.05)
text(pos, LETTERS[1:3], cex = 2)
for (i in 1:3)
selfarrow(pos = pos[i, ], path = "R", arr.pos = 0.2,
curve = c(0.05, 0.1), lcol = "darkred")
for (i in 1:3)
selfarrow(pos = pos[i, ], path = "L", arr.pos = 0.7,
lcol = "darkblue", curve = c(0.05, 0.05))
for (i in 1:3)
selfarrow(pos = pos[i, ], path = "L", arr.pos = 0.5,
lcol = "darkgreen", code = i, arr.type = "triangle")