0

我一整天都在尝试做这个箱线图。我很快就放弃了。请帮忙。我只想为我的 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 个组的非常简单的箱线图?虽然盒子也很棒,但如果有人能帮我制作类似于这个的情节,我将不胜感激。最终,我想制作一个包含多个 ID 的图表,所以它看起来像这个,但像第一个一样有错误栏。

如果有人可以帮助我或给我有关如何进行的提示,我将非常感激!

谢谢你。

4

1 回答 1

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

生产:

在此处输入图像描述

于 2012-11-06T13:45:25.717 回答