我想创建一个geom_path(),其箭头指向路径中的下一个位置。
我可以毫无问题地获得绘图的路径,例如:
df <- (x=1:12, y=20:31, z=1:12)
p <- ggplot(df, aes(x=x, y=y))
p + geom_point() + geom_path()
现在我想要做的是绘制从路径中的一个元素指向下一个元素的箭头。
额外的标记,如果你能告诉我如何平滑从路径中的一个元素到下一个元素的线条。
答案 0 :(得分:16)
geom_segment
有arrow
个参数。这是一个简短的例子:
library(grid) # needed for arrow function
p <- ggplot(df, aes(x=x, y=y)) +
geom_point() +
geom_segment(aes(xend=c(tail(x, n=-1), NA), yend=c(tail(y, n=-1), NA)),
arrow=arrow(length=unit(0.3,"cm")))
library(grid)
函数需要 arrow()
,请参阅here。