我想添加一个彩色箭头(轴的全长)来显示向一个方向移动的时间(这可以假设,但是对于这个图,没有数值,所以我希望箭头显示方向) . 我可以使用 geom_segment
绘制它,但是缺少绘图区域之外的部分 .
我看过这篇文章:R & ggplot2: How to get arrows under the axis label?但这个解决方案是轴 Headers 的黑客 . 这篇文章:https://stackoverflow.com/a/10542622/1000343显示文本区域之外的行,但不是彩色箭头 .
MWE
library(ggplot2); library(grid); library(scales)
dat <- data.frame(Time=0:5, y=0:5)
ggplot(dat, aes(x=Time, y=y)) +
geom_area(alpha=.1) + theme_bw() +
scale_y_continuous(expand = c(0, 0)) +
scale_x_continuous(expand = c(0, 0)) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank()
)
I tried:
ggplot(dat, aes(x=Time, y=y)) +
geom_area(alpha=.1) + theme_bw() +
scale_y_continuous(expand = c(0, 0)) +
scale_x_continuous(expand = c(0, 0)) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank()
) +
geom_segment(aes(x=0, xend = 5 , y=0, yend = 0), size=1.5,
arrow = arrow(length = unit(0.6,"cm")))
Giving
But I want
2 回答
该问题似乎只是剪辑区域(回答here) . 尝试:
要得到
你可以定义自己的轴grob,