我进行了两次实验,其中一些复制了前一组的条件。我有一列用于唯一批次 ID,另一列包含来自实验 1 的 ID,来自实验 2 的批次复制了这些 ID。这是一些像这样存储的示例数据:
test <- data.frame(var1=c(rep("A",4), rep("B",4), rep("C",4), rep("D",4)),
var2=rep(c(rep("A",4), rep("B",4)),2),
value=runif(16,1,5))
这是我的ggplot代码:
ggplot(test, aes(x=var1, y=value, fill=var2)) + geom_boxplot()
这给了我根据var1因子顺序排列的批次 ID。

我想要 Avar2并排,Bvar2并排。是使用facet_gridor的唯一方法facet_wrap吗?
ggplot(test, aes(x=var1, y=value, fill=var2)) + geom_boxplot() +
facet_grid(. ~ var2, scales="free_x")

我尝试添加group=var2,但这给了我重叠且非常宽的箱线图,我也不明白:
ggplot(test, aes(x=var1, y=value, group=var2, fill=var2)) + geom_boxplot()
Warning message:
position_dodge requires non-overlapping x intervals

我可以使用刻面;我主要是在问这个问题,因为当我无法按预期分组时,我感到很惊讶。我还在示例中查看geom_bar()了更多分组方法,但似乎大多数人并没有以这种方式对事物进行分组。
随意提供有关如何解决此问题的其他意见。我只是想比较成对的测试结果,以便轻松查看复制是否与原始试验相匹配。

