【发布时间】:2018-05-18 15:30:16
【问题描述】:
我觉得这应该很容易做到,但我很难弄清楚这一点。
我有一个数据框
type <- c("a","b","c","d","e")
x <- rnorm(5)
y <- rnorm(5)
z <- rnorm(5)
xsd <- sd(x)
ysd <- sd(y)
zsd <- sd(z)
df <- data.frame(type, x,y,z,xsd,ysd,zsd)
df
type x y z xsd ysd zsd
1 a -1.16788106 0.2260430 -1.16788106 0.8182508 0.7321015 0.9016335
2 b -0.09955193 -0.6647980 -0.09955193 0.8182508 0.7321015 0.9016335
3 c -0.87901053 -0.4269936 -0.87901053 0.8182508 0.7321015 0.9016335
4 d -0.87861339 -1.3669793 -0.87861339 0.8182508 0.7321015 0.9016335
5 e 0.84350228 0.4702580 0.84350228 0.8182508 0.7321015 0.9016335
我需要type 的x、y 和z 平均值的分组条形图,其中误差线显示每个变量的标准偏差。标准差在不同的列xsd,ysd和zsd
我需要在 y 轴上绘制平均值,type 在 x 轴上对 x、y、z 变量进行分组。
我尝试使用gather() 重新排列数据,但没有任何成功...
【问题讨论】:
-
x、y、z 是条形本身的值吗?或者你想绘制平均值?您预计 15 条还是 3 条?
-
你的真实数据集是这样的吗?
-
@AntoniosK 是的,不同的名称,但非常相似。只是为了重现性和可读性重新创建了它。