我知道如何显示数据集的子类别的所有方面,但是如何只显示一个方面/子组以及总数? (摘自r-cookbook.com)
library(reshape2) # for the tips data
library(ggplot2)
sp <- ggplot(tips, aes(x=total_bill, y=tip/total_bill)) + geom_point(shape=1)
sp + facet_grid(. ~ sex)
返回以下图片:
现在我希望左(右)面可以显示整个数据集,另一面将保持不变。
答案 0 :(得分:3)
你需要这样做:
library(reshape2) # for the tips data
library(ggplot2)
sp <- ggplot(tips, aes(x=total_bill, y=tip/total_bill)) + geom_point(shape=1)
sp + facet_grid(. ~ sex, margins=T) #margins=True will add the total
注意强>
使用facet_grid无法仅隔离部分方面以及总数。为此,请检查更新。
<强>更新强>
为了复制您想要对构面进行的操作,您需要gridExtra库并执行以下操作:
library(reshape2) # for the tips data
library(ggplot2)
library(gridExtra)
sp <- ggplot(tips, aes(x=total_bill, y=tip/total_bill)) + geom_point(shape=1) + ggtitle('All')
sh <- ggplot(subset(tips,sex=='Male'), aes(x=total_bill, y=tip/total_bill)) + geom_point(shape=1) + ggtitle('Men') +
theme(axis.title.y=element_blank(), axis.ticks.y=element_blank(), axis.text.y=element_blank())
grid.arrange(sp,sh,nrow=1,ncol=2)