Если другие ответы не дают вам достаточного контроля над вашими стрелками с помощью функции стрелок, вы можете использовать функцию my.symbols
из пакета TeachingDemos
. Это позволяет вам создавать свои собственные стрелки и строить их.
Функция ms.arrows
в том же пакете показывает один из способов сделать это: вы можете изменить эту функцию (или другие ms.*
функции), чтобы создать любой тип стрелки, который вы хотите, а затем использовать my.symbols
для их построения.
Изменить
Вот пример по запросу:
library(TeachingDemos)
ms.arrowhead <- function(angle, ...) {
xy <- cbind( c(-1, -0.75, -1, 0),
c(-0.5, 0, 0.5, 0) )
xy <- xy %*% matrix(c(cos(angle),-sin(angle),sin(angle),cos(angle)), 2)
xspline(xy, shape=c(0, -1, 0, 0), open=FALSE, ...)
}
plot(1:10, 1:10)
my.symbols(1:10, 1:10, ms.arrows, angle=seq(pi, 0, length=10),
col='blue', adj=1, length=0, symb.plots=TRUE)
my.symbols(1:10, 1:10, ms.arrowhead, angle= seq(pi, 0, length=10),
col='green', inches=0.5, lwd=2, symb.plots = TRUE)
При этом используется функция xspline
для рисования треугольника с изогнутой спиной в качестве наконечника стрелки. Точки можно изменить, чтобы получить наконечник стрелки другой формы, или можно использовать другой метод для формы.
person
Greg Snow
schedule
20.04.2011
panel.arrows()
, который принимает аргументtype
, где можно указать"open"
или"closed"
, если вам когда-либо понадобятся графики решетки. Жаль, что этой функции нет в базеarrows()
. - person Gavin Simpson   schedule 20.04.2011