在R中具有子组的Boxplot

时间:2015-11-24 14:20:07

标签: r plot

我想在R中创建一个Boxplot with subgroups

我的数据如下:

Build.BuildSelection

如何制作与attached picture类似的箱线图?

1 个答案:

答案 0 :(得分:1)

请注意,我使用以下内容读入您的数据:

df <- read.table(text='Point N.conc toc
                       H1  0.2 0.2
                       H1  0.3 0.3
                       H1  0.4 0.4
                       H1  0.3 0.3
                       H1  0.3 0.3
                       H1  0.5 0.5
                       H1  0.5 0.5
                       H1  0.4 0.4
                       H1  0.1 0.1
                       H2  0.4 0.4
                       H2  0.5 0.5
                       H2  0.5 0.6
                       H2  0.4 0.5
                       H2  0.1 0.1
                       H2  0.3 0.3
                       H2  0.4 0.4
                       H2  0.3 0.3
                       H2  0.3 0.3
                       H3  0.4 0.4
                       H3  0.5 0.8
                       H3  0.3 0.3
                       H3  0.2 0.2
                       H3  0.2 0.2
                       H3  0.4 0.4
                       H3  0.3 0.3
                       H3  0.2 0.2
                       H3  0.3 0.4',header=T)

你可以试试这个:

library(ggplot2)
library(reshape2)

df1 <- melt(df,id.vars=1)

ggplot(df1,aes(x=Point,y=value,fill=variable))+
  stat_boxplot(geom="errorbar",
               stat_params = list(width = 0.2),
               position=position_dodge(width=0.3))+
  geom_boxplot(position=position_dodge(width=0.3),width=0.25)+
  ylab("mg/l")+xlab("")+labs(fill="")+theme_classic()+
  theme(axis.title.y = element_text(angle=0))

MathWorld

请注意,对ggplot()的大部分调用都是为了更准确地模仿您的绘图。可以通过以下方式获得足够的箱线图:

ggplot(df1,aes(x=Point,y=value,fill=variable))+geom_boxplot()

enter image description here