中文 · PDF 1029
不包含右端点,而用于表示起点的左方括号则是包含的。落在边界上的值计入较高的组。每个条形的宽度相同,其选择旨在展现数据的整体形状。组数过多且每组很小的直方图非常不规则,而组数过少且每组很大的直方图则没有结构。通常,直方图用大约八到十个组来覆盖数据范围。

图 13.7 的运行时间直方图可以通过以下 R 代码复现:
图 13.4 中的数据 汽车发动机测试数据 # 输入发动机 A 运行时间的数据 time_A <- c(27.7, 24.3, 23.7, 22.1, 21.8, 24.7, 23.4, 21.6, 24.5, 26.1, 24.8, 23.7, 25.0, 26.9, 23.7, 24.1, 23.1, 23.4, 23.1, 24.1, 28.6, 20.2, 25.7, 24.6, 24.0, 24.9, 21.9, 25.1, 25.7, 23.5) # 输入发动机 B 运行时间的数据 time_B <- c(24.9, 21.4, 24.1, 27.5, 27.5, 25.7, 24.9, 23.3, 22.5, 28.5, 25.9, 26.9, 27.7, 25.4, 25.3, 24.3, 24.5, 26.1, 27.7, 24.3, 26.1, 24.0, 24.9, 26.7, 27.3, 23.9, 23.1, 25.5, 24.9, 25.9) # 输入发动机 A 环境温度的数据 temp_A <- c(24, 25, 18, 15, 19, 16, 17, 14, 18, 20, 15, 15, 22, 18, 19, 7, 14, 16, 9, 14, 23, 14, 18, 18, 12, 18, 20, 16, 16, 11) # 输入发动机 B 环境温度的数据 temp_B <- c(13, 19, 18, 19, 21, 17, 17, 19, 21, 12, 17, 13, 17, 23, 30, 17, 16, 18, 14, 19, 5, 17, 18, 23, 28, 18, 10, 25, 22, 16) # 将发动机 A 和 B 的运行时间合并为一个 # 变量 time <- c(time_A, time_B) # 将发动机 A 和 B 的环境温度合并为一个 # 变量 temp <- c(temp_A, temp_B) # 生成一个变量来表示发动机类型 engine <- c(rep("A", 30), rep("B", 30)) # 将信息存储到一个数据框中: data <- data.frame(time, temp, engine) # 发动机 A 运行时间的直方图。将组边界 # 设为 19.99, 20.99, 21.99, 22.99, 23.99, 24.99, # 25.99, 26.99, 27.99, 28.99 h<-hist(time_A, breaks=seq(19.99,28.99,1), border="black", col="deepskyblue", axes=F, main="", ylab="Number", xlab="Running time in minutes") # 定义 X 轴 axis(side=1, at=seq(20,29,1))