我根据我的分类特征输出我的响应变量的每个boxplot,但我无法突出显示每个类别的观察数量。我尝试了stat_summary和geom_text()选项,这些选项在这里说明但它们不起作用。
如何在箱形图中显示它们?
以下是我的代码:
for(i in 3:ncol(Train_factor)){
b<-paste("Boxplot for",colnames(Train_factor[i]))
p10 <- (ggplot(data=Train_factor, aes_string(x = names(Train_factor)[i],
y = "Response",fill=variable)) +
geom_boxplot())
plot_list[[i]] = p10
}
for (i in 3:ncol(Train_factor)) {
file_name = paste("boxplot", i, ".tiff", sep="")
tiff(file_name)
print(plot_list[[i]])
dev.off()
}
答案 0 :(得分:1)
您没有提供可重现的示例,因此这是使用内置mtcars
数据框的一般示例。我们使用geom_text()
但不使用stat="identity"
(默认值),我们使用stat="count"
和label=..count..
(这是内部计算的值数的计数),以便显示值将是值的计数。
library(ggplot2)
ggplot(mtcars, (aes(x=factor(cyl), y=mpg))) +
geom_boxplot() +
geom_text(aes(label=..count..), y=0, stat='count', colour="red", size=4) +
coord_cartesian(ylim=c(0,max(mtcars$mpg))) +
theme_classic()