具有均值和标准差的R中的多变量分组条形图
我有一个大数据帧,基本上如下所示:具有均值和标准差的R中的多变量分组条形图,r,R,我有一个大数据帧,基本上如下所示: m.percent nm.percent sw.percent x.percent conc 78,60 21,4 39,3 39,3 1 56,90 43,1 35,8 21,1 1 49,30 50,7 13,3 36,0 1 55,00 45,
m.percent nm.percent sw.percent x.percent conc
78,60 21,4 39,3 39,3 1
56,90 43,1 35,8 21,1 1
49,30 50,7 13,3 36,0 1
55,00 45,0 30,0 25,0 1
40,20 59,8 26,2 14,0 10
59,50 40,5 31,3 28,2 10
60,60 39,4 31,8 28,8 10
68,70 31,3 43,3 25,4 10
86,80 13,2 39,7 47,1 10
38,30 61,7 19,1 19,1 50
47,60 52,4 23,2 24,4 50
59,80 40,2 30,8 29,0 50
我想根据conc基于每个百分比列的平均值(+/-sd)创建一个分组条形图。例如:x轴应为1、10、50,并且对于这些值中的每一个,应具有四个条形(平均m.percent、平均nm.percent、平均sw.percent、平均x.percent)。
我真的不知道从哪里开始,我发现其他例子只有3列,没有事先计算(平均值和标准差)。看看下面我使用的库,它们帮助了很多。 这是你可以很容易找到的东西。
#加载库
#如果没有安装,请安装它们
图书馆(GG2)
图书馆(E2)
库(数据表)
#我自己做材料
很抱歉。这不是一个代码编写服务。你已经试过什么了?为什么您发现的解决方案不适用于四列?
#load libraries
#install them if you havent
library(ggplot2)
library(reshape2)
library(data.table)
#me making my own matrx
a<-matrix(rnorm(50,50,5),10,5 )
a<-as.data.frame(a)
a[,6] <- c(1,1,1,10,10,10,50,50,50,50)
colnames(a) <- c("m.percent", "nm.percent", "sw.percent", "x.percent" ,"extraperc","conc")
#plug your matrix in as a
data<-melt(a, id.vars="conc")
data<-as.data.table(data)
data.m<- data[,mean(value), by=list(conc, variable)]
ggplot(data.m, aes(x=conc, y=data.m$V1, fill=variable)) + geom_bar(position=position_dodge(), stat="identity")