在调整直方图的比例时,参考ggplot中的特殊变量

时间:2016-10-18 13:43:14

标签: r ggplot2 histogram scoping

背景

我正在考虑在调整直方图元素时使用special variables (..count.., etc.) 的可能性。

实施例

例如,下面的代码生成一个简单的直方图,其中条形图拉伸到面板的最大长度,顶部的整齐边距通过limits = c(0,15)实现。

require(ggplot2)
ggplot(mtcars) +
  geom_histogram(aes(x = cyl)) +
  scale_y_continuous(expand = c(0,0),
                     limits = c(0,15))

预览

Initial histogram

问题

我的目的是使limits = c(0,15)动态并连接到最大可用计数,而无需生成单独的数据框。因此,我想利用特殊变量,例如,我想在使用代码时添加 10%保证金:

ggplot(mtcars) +
  geom_histogram(aes(x = cyl)) +
  scale_y_continuous(expand = c(0,0),
                     limits = c(0, ..count.. * 1.1))

但是,这会导致错误:

Error in continuous_scale(c("y", "ymin", "ymax", "yend", "yintercept",  : 
  object '..count..' not found

我了解..count..应该是可用的,因为它是由stat_bin根据Brian's answer调用的index.html创建的。

0 个答案:

没有答案