selfarrow.Rdadds a circular arrow, from and to the same point
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, ...)2-valued vector with coordinates (x,y) of points *from and to* which to draw arrow.
line width.
line type.
line color.
relative position of arrowhead.
position of circle: R, L, U, D for right, left, up and down respectively.
relative size of curve (fraction of arrow length).
size of segments, in radians, to draw ellipse (decrease for smoother).
how to put the arrowhead.
arguments passed to function Arrows.
coordinates (x,y) where arrowhead is drawn
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.
straightarrow, segmentarrow,
curvedarrow,
bentarrow,treearrow, splitarrow,
arrows: the comparable R function,
Arrows: more complicated arrow function from package
shape.
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")