写在前面。
这篇文章对应原书的第6章,主要介绍一些描述数据分布的可视化图形。主要包括如下这些:
- 直方图
- 密度图
- 频数多边形
- 箱线图
- 小提琴图
- Wilkinson点图
密度图
核密度图
也是很常用的一种反映数据分布的图形。
简单密度图
使用geom_density
语句,映射一个连续型变量
。
ggplot(data = faithful, aes(x = waiting)) +
geom_density()
- 核密度图是
基于样本数据进行总体分布的估计
;曲线的光滑程度取决于函数的带宽;带宽越大,曲线越光滑
;- 可以通过
adjust
进行设置,默认值为1
。
ggplot(data = faithful, aes(x = waiting)) +
geom_line(stat = "density", adjust = 0.25, colour = "orangered")+
geom_line(stat = "density")+
geom_line(stat = "density", adjust = 2, colour = "lightblue")
x
轴的宽度也是自动分配
的,这可能会造成边缘截断,因此可以自己手动设置:
ggplot(data = faithful, aes(x = waiting)) +
geom_density(stat = "density", alpha = 0.25, colour = NA, fill = "blue")+
geom_line(stat = "density") +
xlim(35,105)
将密度曲线叠加到直方图上,可以对观测值
的理论分布
与实际分布
进行比较。
注意,密度图
的曲线下面积总是1
,因此y
值较小,因此,使用y=..density..
减小直方图的标度
。
ggplot(data = faithful, aes(x = waiting, y=..density..)) +
geom_histogram(fill = "cornsilk", colour = "grey60")+
geom_density()+
xlim(35,105)