【发布时间】:2017-11-20 10:00:03
【问题描述】:
假设我有以下问题:有一组数据,生成一个图表,指示有多少数据点低于任何给定阈值。
这很容易实现
n.data <- 215
set.seed(0)
dt <- rnorm(n.data) ** 2
x <- seq(0, 5, by=.2)
y <- sapply(x, function(i) length(which(dt < i)))
ggplot() +
geom_point(aes(x=x,y=y)) +
geom_hline(yintercept = n.data)
问题是,假设我想添加一个标签来指示观察的总数是多少 (n.data)。我该如何做到这一点,同时将其他休息时间保持为默认值?
我想要的结果类似于下图,由代码生成
ggplot() +
geom_point(aes(x=x,y=y)) +
geom_hline(yintercept = n.data) +
scale_y_continuous(breaks = c(seq(0,200,50),n.data))
但是,即使我更改了 n.data 的值,我也希望它能够正常工作,只需将其添加到默认中断即可。
(如果您还摆脱了最后一个默认中断和n.data 之间的网格线,则可以加分!)
【问题讨论】:
-
你成功了吗? (顺便说一句,根本不是重复的)
-
@DanChaltiel,感谢您重新打开它。我已经添加了一个关于我今天将如何处理这个问题的答案。
标签: r ggplot2 axis-labels