我正在生成一个图,并试图弄清楚如何抑制仅一个刻度标记标签(不是标记 - 只是标签)。
以下是一些示例代码:
x1 <- seq(0, 100, by = 1)
y1 <- runif(n = 100, min = 1, max = 10)
library(rando)
labe <- r_Letters(nchar = 1, n = 100)
test_dat <- as.data.frame(cbind(x1, y1, labe))
test_dat$x1 <- as.numeric(test_dat$x1)
test_dat$y1 <- as.numeric(test_dat$y1)
library(ggplot2)
library(ggrepel)
g <- ggplot(data = test_dat, aes(x = x1, y = y1))
g <- g + geom_line()
g <- g + geom_point()
g <- g + expand_limits(x = c(-10, 110), y = c(0, 10))
g <- g + scale_x_continuous(breaks = scales::pretty_breaks(n = 25))
g <- g + scale_y_continuous(breaks = scales::pretty_breaks(n = 5))
g <- g + geom_label_repel(data = test_dat, aes(x = x1, y = y1, label = labe),
size = 2.0, color = "blue", box.padding = unit(0.5, "lines"),
point.padding = unit(0, "lines"))
g
在我的真实数据集中,当我使用 geom_label_repel 标记我的点(真实数据的子集;我在示例中偷懒了)时,我需要扩展绘图的范围(因此,expand_limits)。所有刻度标记都在我想要的位置,但最左边的刻度标记(在我的示例中为 -15)不符合物理规律,我只想删除它。
我可以弄清楚如何抑制所有的刻度线和所有的标签,但这不是我想要的——我想保留刻度线的原样,但只删除最左边的标签。
有什么想法吗?
一种方法是使用公式手动调整中断标签,该公式在 -15 标签处输出空白,但在其他方面保持不变。
expand_limits
如果您不想显示该区域,为什么一开始要设置?我的方法是,至少如果您只想隐藏域的一端或另一端的标签,则首先不要绘制该区域。此外,如果您想隐藏图形域(或范围)中间的 tic 标签,我怀疑 Ed. Tufte 会生气地皱眉。