gpt4 book ai didi

r - 带有一个因子的多列的ggplot箱线图

转载 作者:行者123 更新时间:2023-12-02 06:00:35 24 4
gpt4 key购买 nike

我是 ggplot2 的新手,我想在同一图中绘制多个数字列的箱线图,并根据最后一列中的一个因子对箱线图进行分组,数据帧的标题如下所示:

id var1 var2 var3 factor

我知道我能做到:

ggplot(df,aes(x=factor,y=var1)+geom_boxplot()

对于每个变量。

如何使用 ggplot2 将它们绘制在一起?基本图形实用程序 boxplot(df[,-c(id,factor)] 会将它们绘制在一起。

最佳答案

以下作品“在同一图中绘制多个数字列的箱线图,并按一个因子对箱线图进行分组”:

mm = melt(df, id=c('id','factor.col'))
ggplot(mm)+geom_boxplot(aes(x=paste(variable,factor.col,sep="_"), y=value))

enter image description here

数据:

> df
id var1 var2 var3 factor.col
1 1 0.0562941632 1.3055892 -1.7553986 c
2 2 0.3187487914 -0.6434729 0.7582403 a
3 3 -1.0120881740 0.3898366 0.4790115 c
4 4 -0.7576871261 0.9474247 0.2180341 b
5 5 -0.2895981608 0.2388043 -0.4407693 a
6 6 0.0005306311 0.9494667 -0.2604795 c
7 7 0.2022893934 -0.3095420 -1.9483369 c
8 8 -0.8179580833 -0.7891642 0.7662824 b
9 9 -0.7553554525 0.2734337 -0.7145471 b
10 10 0.4206429078 -0.6171774 0.6274320 c
>

也可以使用以下内容:

ggplot(mm)+geom_boxplot(aes(x=variable, y=value))+facet_grid(.~factor.col)

enter image description here

关于r - 带有一个因子的多列的ggplot箱线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26164676/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com