我将数据分组,例如,2个参数:
set.seed(1)
dat <- data.frame( xx=sample(10,9),
yy=sample(20,9),
group=c('A','B', 'C') )
我可以为每个维度绘制箱线图:
ggplot(dat, aes(x=group, y=yy, fill=group)) + geom_boxplot()
ggplot(dat, aes(x=group, y=xx, fill=group)) + geom_boxplot() + coord_flip()
现在我想结合这些并绘制反映两个变量数据的箱形图,如下所示: (此图像是在图形编辑器中手动制作的)
有没有简单的方法来绘制这种箱形图?
答案 0 :(得分:1)
这不是表达的好方法。这可能非常令人困惑。通常这些数据就像这样表示。
datPlot <- melt(dat)
ggplot(datPlot, aes(x=group, y=value, fill=variable)) + geom_boxplot()
或者如果两个变量的范围非常不同,您可以尝试分面
ggplot(datPlot, aes(x=group, y=value, fill=group)) + geom_boxplot()
+facet_wrap(~variable,scale="free_y")
或者
ggplot(dat, aes(x=xx, y=yy, color=group)) + geom_point(size=3)