我一直在努力做这个箱子图一整天。我很快就放弃了。请帮忙。 我只想要一个简单的箱子图,用于我的3组,A,B和C. 这是我简化的数据:
> mydata
A01 A02 A03 B01 B02 B03 C01 C02 C03
id0001 1 2 3 6 7 8 11 12 13
A01,A02和A03应该构成A等的置信区间。如何在x轴上设置一个非常简单的箱线图,其中有3组? 虽然盒子也很棒,但如果有人能帮助我制作类似于this one的情节,我将非常感激。最后,我想创建一个包含多个ID的图表,所以它看起来像this one,但是像第一个一样有错误条。
如果有人可以帮助我或给我提示如何继续,我会非常感激!
谢谢。
答案 0 :(得分:5)
假设您确实需要一个箱线图(或 ggplot2 中的任何其他图表),您需要将数据强制转换为正确的格式。以下是基于您显示的类似数据的示例:
df <- data.frame(matrix(c(1:3, 6:8, 11:13), nrow = 1))
names(df) <- paste0(rep(LETTERS[1:3], each = 3), 1:3)
sdf <- stack(df)
sdf <- transform(sdf, group = substring(ind, 1, 1),
obs = substring(ind, 2))
数据sdf
现在采用标准化格式(或长格式):
> head(sdf)
values ind group obs
1 1 A1 A 1
2 2 A2 A 2
3 3 A3 A 3
4 6 B1 B 1
5 7 B2 B 2
6 8 B3 B 3
然后可以轻松绘制这些数据:
require(ggplot2)
plt <- ggplot(sdf, aes(x = group, y = values)) +
geom_boxplot()
plt
制造