【R画图学习9.3】参加截断的柱状图

分享
计算机软件开发 2024-10-1 07:12:37 196 0 来自 中国
break就是截断的意思,一样平常告急是在画图的时间,Y轴上某些值过大,容易把别的规律给掩饰掉,以是这时间就需要一个截断利用。
今天用下面一组简单的测试数据。
1.png library(ggplot2)
library(ggbreak)
data <- read.table("week.data.txt",header=T,sep="\t")
head(data)
data$day =factor(data$day)
ggplot(data,aes(day,time,fill=week_n))+
geom_bar(stat="identity",show.legend=F)+
theme(axis.text.x=element_text(vjust=0.9,hjust=1,angle=45))
然后,参加隔断,告急通过函数scale_y_break来实现。
ggplot(data,aes(day,time,fill=week_n))+
geom_bar(stat="identity",show.legend=F)+
theme(axis.text.x=element_text(vjust=0.9,hjust=1,angle=45))+
scale_y_break(breaks=c(100,170),ticklabels=seq(180,240,20),scales=0.4)
其中breaks来界说截断的位置,ticklabels来界说截断后的Y轴坐标刻度,scales界说上下表现比例,大于1上面比例大,小于1下面比例大。0.4代表上面比例40%。
3.png ggplot(data,aes(day,time,fill=week_n))+
geom_bar(stat="identity",show.legend=F)+
theme(axis.text.x=element_text(vjust=0.9,hjust=1,angle=45))+
scale_y_break(breaks=c(100,170),ticklabels=seq(180,240,20),scales=0.4)+
facet_wrap(week_n~.,scales="free_x")+
#theme_classic()+
theme(text = element_text(size = 15))
我们也可以利用facet_wrap来举行分面利用。
ggplot(data,aes(day,time,fill=week_n))+
geom_bar(stat="identity",show.legend=F)+
theme(axis.text.x=element_text(vjust=0.9,hjust=1,angle=45))+
scale_y_break(breaks=c(50,100),ticklabels=seq(100,120,5),scales=0.4)+
scale_y_break(breaks=c(120,170),ticklabels=seq(180,240,10),scales=0.4)+
facet_wrap(week_n~.,scales="free_x")+
theme_classic()+
theme(text = element_text(size = 15))
也可以参加多个break,就是写多个scale_y_break函数。
5.png
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2025-3-10 07:18, Processed in 0.175417 second(s), 35 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表