ggplot2 - geom_histogram的binwidth with scale_x_log10

时间:2017-12-30 23:02:15

标签: r ggplot2

我正在尝试使用ggplot构建直方图。 我不太了解binwidth的工作原理。

 library(ggplot2)
 set.seed(10)
 testData = data.frame(x=rlnorm(100, log(1), log(2.5)))
 ggplot(data=testData, aes(x=testData$x)) +
 geom_histogram(binwidth=1)+scale_x_log10()

每个数量级如何获得1 bar? (即10 ^ -1和10 ^ 0之间的1 bar,10 ^ 0和10 ^ 1之间的1 bar,......)

1 个答案:

答案 0 :(得分:1)

一种方法是使用cut()函数对数据进行分组,然后按组进行计数

library(ggplot2)
set.seed(10)
x=rlnorm(100, log(1), log(2.5))
testData = data.frame(x = x, grp = cut(x, c(0.1, 1, 10)))
ggplot(data=testData, aes(grp)) +
    stat_count()