直方图(Histogram)又称柱状图,是一种统计报告图,由一系列高度不等的纵条纹或线段表示的数据分布情况。可以使用直方图估计数据的概率分布情况。
在R语言中,可以使用hist()函数来绘制直方图。
其使用的格式为:
hist(x, breaks = "Sturges",
freq = NULL, probability = !freq,
include.lowest = TRUE, right = TRUE,
density = NULL, angle = 45, col = NULL, border = NULL,
main = paste("Histogram of" , xname),
xlim = range(breaks), ylim = NULL,
xlab = xname, ylab,
axes = TRUE, plot = TRUE, labels = FALSE,
nclass = NULL, warn.unused = TRUE, …)
主要参数的含义如下:
(1)x
向量,直方图所用到的数据。
(2)breaks
直方图的断点,主要有以下几种情况:
①可以是一个向量给出直方图中每个区间的断点;
②可以是一个函数用于计算每个断点的向量;
③用于表示区间数的一个数字;
④一个字符串用于给出计算区间数所使用的算法;
⑤一个用于计算区间数的函数。
(3)freq
逻辑变量,如果设置为TRUE,则直方图的数据为频数,若为FALSE,则为概率密度。
当仅当breaks为等距,且为指定probability时,freq默认为TRUE。
(4)probability
与!freq的含义相同。
(5)include.lowest
逻辑值,如果为TRUE,则如果数据x[i]等于断点值,则会包含在第一个区间条中(如right参数为FALSE,则会包含在下一个区间中)。除非breaks是向量,否则设置会被忽略并给出一个警告错误。
(6) right
逻辑值。如果设置为TRUE,则直方图条右侧区间是封闭的(左侧开放)。
(7)density
指阴影线的密度,即每英寸(2.54厘米)的线数。默认值为NULL值,意味着没有阴影线。非正值也不会绘制阴影线。
(8)angle
指阴影线的斜度,以逆时针角度给出。默认为45度。
(9)col
填充条形使用的颜色。默认值为NULL,即没有填充色。
(10)border
数字或字符串,用于描述条形边框的颜色。默认为NULL,即使用标准前景色。
(11)main, xlim, ylim, xlab, ylab
见本站关于plot函数中的说明(R语言中plot函数的使用)
(12)axes
逻辑值。默认为TRUE,绘图时绘制轴。
(13)labels
逻辑值。默认为FALSE,如果为TRUE,则在条形框的顶端给出标签(频数或密度)。
下面举几个例子:
(1)绘制19名学生的身高频率直方图。
Height<-c(144,166,163,143,152,169,130,159,160,175,161,170,146,159,150,183,165,146,169)
hist(Height,col="lightblue",border="red",labels=TRUE,ylim=c(0,7.2))
结果如下图:
(2)hist(Height,breaks=12,freq=FALSE,density=10,angle=60)
结果如下图:
(3)
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5))
结果如下:
新闻热点
疑难解答