R ggplot2:如何从数据帧创建简单的箱线图?

R ggplot2:如何从数据帧创建简单的箱线图?,r,boxplot,ggplot2,R,Boxplot,Ggplot2,我一整天都在试着做这个箱线图。我很快就放弃了。请帮忙。 我只想为我的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组的非常简单的箱线图? 虽然盒子也会很棒,但如果有人能帮我把我的情节设计成类似的,我会非常感

我一整天都在试着做这个箱线图。我很快就放弃了。请帮忙。 我只想为我的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的图,看起来像,但带有第一个一样的错误条

如果有人能帮助我或给我一些建议,我会非常感激


谢谢。

假设您确实需要箱线图(或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))
然后可以轻松绘制这些数据:

require(ggplot2)
plt <- ggplot(sdf, aes(x = group, y = values)) +
    geom_boxplot()
plt
require(ggplot2)

plt假设您确实想要一个箱线图(或来自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))
然后可以轻松绘制这些数据:

require(ggplot2)
plt <- ggplot(sdf, aes(x = group, y = values)) +
    geom_boxplot()
plt
require(ggplot2)

请注意,您没有足够的数据来绘制方框图。IIRC箱线图只有在每组观察超过6次时才有意义。您显示的数据每组只有3个观察值。我有更多的数据,这只是一个数据提取的例子。我对每组有大约6-7个值。无论如何,我相信应该可以用3个数据点绘制置信区间或误差条。我链接到的图像是基于每一行(基因)的3个重复,因此每组只有3个值。你似乎把置信区间/误差条与方框图混淆了。描述了方框图,而描述了置信区间。你想要哪一个?谢谢你和我在一起。你可能是对的。我在学习。这个数据可能有误。如何使用错误条或置信区间查看数据,如我链接的图像?你知道吗?我认为它们就像没有盒子的盒子。那可能是另外一回事了。你认为我应该提出一个新问题并删除箱线图部分吗?你没有足够的数据来绘制箱线图。IIRC箱线图只有在每组观察超过6次时才有意义。您显示的数据每组只有3个观察值。我有更多的数据,这只是一个数据提取的例子。我对每组有大约6-7个值。无论如何,我相信应该可以用3个数据点绘制置信区间或误差条。我链接到的图像是基于每一行(基因)的3个重复,因此每组只有3个值。你似乎把置信区间/误差条与方框图混淆了。描述了方框图,而描述了置信区间。你想要哪一个?谢谢你和我在一起。你可能是对的。我在学习。这个数据可能有误。如何使用错误条或置信区间查看数据,如我链接的图像?你知道吗?我认为它们就像没有盒子的盒子。那可能是另外一回事了。你认为我应该提出一个新问题并删除方框图部分吗?