我想创建具有相同厚度/宽度的水平网格线的图。我的问题是,ggplot似乎在面板底部和顶部的网格线上使用了半宽。这似乎是因为网格线垂直居中于刻度线。因此,顶部网格线的上半部分不在图中,底部网格线的下半部分不在图上。下面提供了一个最小的例子:
dat <- data.frame(x = 1, y = 1)
ggplot(dat, aes(x, y)) + geom_point() +
theme(panel.grid.major.y = element_line(color = "red", size = 5))
有人知道解决方案吗? (我猜测有一些涉及轴限制的变通方法 - 但我正在寻找更纯粹的解决方案。)