0%

ggplot2集锦之六绘制各种图形2

本文总结一下ggplot2包绘制各种类型的图,本文包括:小提琴图、箱线图、抖动散点图。

1. 小提琴图

1
2
3
4
5
df1 <- data.frame(num=rnorm(500,mean = 50),
group=rep(c("group1"),500))
df2 <- data.frame(num=rnorm(500,mean = 52),
group=rep(c("group2"),500))
df <- rbind(df1,df2)
1
2
ggplot(df,aes(x=group,y=num))+
geom_violin()

2. 箱线图

箱线图通过四分位数描述数据分布,从上到下依次是最大值、上四分位数、中位数、下四分位数、最小值。
其中,盒子中间的线表示中位数,盒子的上下边缘表示数据的上下四分位数,盒子上下的线段称为“须”,表示数据的范围。在盒须图中,小圆点表示离群值。

盒须图中的最小值不一定是数据的最小值,因为盒须图是基于数据的分位数绘制的。盒子的下边缘是数据的第一四分位数(即将数据从小到大排列后,第25%位置的数),而须的下端通常是数据中最小的非离群值,也就是大于等于下边缘1.5倍四分位距的最小值。

1
2
ggplot(df,aes(x=group,y=num))+
geom_boxplot()

有缺口的箱线图

1
2
ggplot(df,aes(x=group,y=num))+
geom_boxplot(notch = TRUE)

3. 抖动散点图

1
2
ggplot(df,aes(x=group,y=num))+
geom_jitter()

alt 图标

4. 组合图

4.1 小提琴图和箱线图组合

1
2
3
4
ggplot(df,aes(x=group,y=num))+
geom_violin()+
geom_boxplot(width=0.1,position = position_identity())+
stat_summary(fun.y="mean",geom="point",shape=23,fill="red",size=2)

4.2 和抖动散点图组合

1
2
3
ggplot(df,aes(x=group,y=num))+
geom_violin()+
geom_jitter(color = "grey")
1
2
3
ggplot(df,aes(x=group,y=num))+
geom_boxplot()+
geom_jitter(color = "grey")

alt 图标