如何在ggplot2绘制的条形图中添加指定的灰色区块?
你可以通过ggplot2的annotate()函数自定义添加灰色矩形区块,调整对应参数即可控制区块的位置、大小和深浅,完整修改代码如下:
library(ggplot2) df2 <- data.frame(Class=rep(c("A", "B"), each=1), AB_Event=rep(c( "Primary Output"),2), Count=c(398, 4106)) p <- ggplot(data=df2, aes(x=AB_Event, y=Count, fill=Class)) + # 自定义灰色区块,将该代码行放在geom_bar之前可让区块显示在条形下方作为背景 annotate("rect", xmin = 0.6, xmax = 0.9, ymin = 0, ymax = 4500, fill = "gray90", alpha = 0.7) + geom_bar(stat="identity", color="black", position=position_dodge(width=0.9)) + geom_text(aes(label=Count), vjust = -0.2, size = 5, position = position_dodge(0.9)) + theme_minimal() p
参数调整说明:
xmin/xmax:控制灰色区块的左右边界,你的x轴仅存在1个离散分类,对应的轴坐标数值为1,调整这两个值即可移动区块的横向位置,需要添加多个区块的话新增多组annotate()代码即可ymin/ymax:控制灰色区块的上下高度,可根据你的条形高度灵活修改fill:设置灰色深浅,gray90为浅灰,数值越小灰色越深alpha:设置区块透明度,数值越低透明度越高,避免遮挡其他元素
内容的提问来源于stack exchange,提问作者Melih Aras
相关产品推荐
相关产品推荐

