R:使用 ggthemes::extended_range_breaks() 更改 ggplot2 中的刻度数

R: Change number of ticks in ggplot2 with ggthemes::extended_range_breaks()

假设以下 MWE:

library(ggplot2)
library(ggthemes)

set.seed(100)
df <- data.frame(x = rnorm(50), y = rnorm(50))

ggplot(df, aes(x,y)) +
  geom_point() +
  theme_tufte() +
  geom_rangeframe() +
  scale_x_continuous(breaks = extended_range_breaks()(df$x),
                     labels = scales::number_format(accuracy = 0.1))+
  scale_y_continuous(breaks = extended_range_breaks()(df$y),
                     labels = scales::number_format(accuracy = 0.1))

从我的角度来看,y 轴上的刻度数不够,1.0 和 2.9 之间的 space 太大,我希望在 2.0 处有另一个刻度。有人知道在使用 extended_range_breaks 时如何做到这一点,还是我必须切换到手动设置刻度?

我试过scale_y_continuous(n.breaks = 7)scale_y_continuous(breaks = extended_range_breaks(n = 7)(df$y),但都没有效果。

不是一个完美的答案,但至少 work-around 目前:更改应用于四个优化组件的权重。为了简单、覆盖面、密度和易读性,参数设置为 w = c(0.25, 0.2, 0.5, 0.05)。例如,如果我们将覆盖率设置为 2(对于 y-axis),图形将变为以下内容:

简单添加 (-2,2) 的实际预期目标尚未通过此调整实现。