首页 > 解决方案 > ggplot2 - 无论 y 轴的范围如何,都设置中断

问题描述

我想在我的 y 轴上设置中断,以便它们每 10 个单位出现一次。通常你会使用类似的东西:

p+
  scale_y_continuous(breaks = seq(0, 100, 10))

但是,如果我使用的数据集每天都在更新,并且 y 轴的最大水平经常变化,该怎么办?我想找到一种解决方法,以便每隔 10 个单位出现一次中断,而不管刻度的最大值是多少。我想避免每隔几天就将函数100内部更改为其他数字。seq

标签: rggplot2

解决方案


您可以指定breaks为数据的函数。这应该有效:

scale_y_continuous(breaks = function(z) seq(0, range(z)[2], by = 10))

(我z在这里用它来说明它是一个匿名函数,参数的名称并不重要。)


推荐阅读