PDF 111 / 520 ggplot(data = diamonds) + geom\histogram(mapping = aes(x = carat), binwidth = 0.5)
English · PDF 111
Original PDF page 111
中文 · PDF 111

ggplot(data = diamonds) + geom_histogram(mapping = aes(x = carat), binwidth = 0.5)

你可以通过结合使用 dplyr::count() 和 ggplot2::cut_width() 来手工计算:

diamonds %>% count(cut_width(carat, 0.5)) #> # A tibble: 11 × 2 #> cut\_width(carat, 0.5) n #> #> 1 [-0.25,0.25] 785 #> 2 (0.25,0.75] 29498 #> 3 (0.75,1.25] 15977 #> 4 (1.25,1.75] 5313 #> 5 (1.75,2.25] 2002 #> 6 (2.25,2.75] 322 #> # ... with 5 more rows

直方图将 x 轴划分为等宽的区间(bin),然后用每个条形的高度来显示落在每个区间中的观测数量。在前面的图中,最高的条形表明将近 30,000 个观测的克拉(carat)值介于 0.25 和 0.75 之间,这正是该条形的左右边界。

你可以使用 bin width 参数来设置直方图中区间的宽度,该参数以 x 变量的单位来度量。在处理直方图时,你应该始终尝试多种不同的 binwidth,因为不同的 binwidth 可以揭示不同的模式。例如,下面是当我们放大时前图的样子