gpt4 book ai didi

r - ggplot2:在离散轴上显示每第 n 个值

转载 作者:行者123 更新时间:2023-12-05 00:46:56 25 4
gpt4 key购买 nike

如何在离散轴上的每 n 个值中自动仅显示 1 个?

我可以得到这样的所有其他值:

library(ggplot2)

my_breaks <- function(x, n = 2) {
return(x[c(TRUE, rep(FALSE, n - 1))])
}

ggplot(mpg, aes(x = class, y = cyl)) +
geom_point() +
scale_x_discrete(breaks = my_breaks)

但我认为不可能指定 n my_breaks 的参数, 是吗?

这可能是另一种方式吗?我正在寻找一种适用于字符和因子列的解决方案。

最佳答案

不太像,但是scale_x_discrete可以将函数作为中断参数,因此您只需要调整您的代码以使其成为函数式(返回函数的函数),事情就会起作用:

every_nth = function(n) {
return(function(x) {x[c(TRUE, rep(FALSE, n - 1))]})
}

ggplot(mpg, aes(x = class, y = cyl)) +
geom_point() +
scale_x_discrete(breaks = every_nth(n = 3))

关于r - ggplot2:在离散轴上显示每第 n 个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52919899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com