1.cowplotR包的安装,输入代码install.packages(“cowplot”),安装成功后,用library(“cowplot”)调用该R包。
2.以单个柱状图为元素,做出柱状图,原始数据如表1,代码如图1:
表1 原始数据表
supp | does | len | SD | SE |
OJ | 0.5 | 13.2 | 4.5 | 2.1 |
OJ | 1 | 22.7 | 3.9 | 2 |
OJ | 2 | 26.1 | 2.7 | 1.6 |
VC | 0.5 | 8 | 2.8 | 1.7 |
VC | 1 | 16.8 | 2.5 | 1.6 |
VC | 2 | 26.1 | 4.8 | 2.2 |
library("ggplot2")
read.csv("C:\\Users\\26869\\Desktop\\柱状图.csv")
df2<-read.csv("C:\\Users\\26869\\Desktop\\r语言.csv")
df2
ggplot(df2, aes(x=does, y=len, fill=supp)) +
geom_bar(position=position_dodge(), stat="identity") +
geom_errorbar(aes(ymin=len-SE, ymax=len+SE),size=0.75,width=0.08,position=position_dodge(0.45))+
scale_y_continuous(breaks=0:20*4) +
scale_x_continuous(breaks=0:10*0.5)+
theme_bw()+
theme(panel.grid.major=element_line(colour=NA),
panel.background = element_rect(fill = "transparent",colour = NA),
plot.background = element_rect(fill = "transparent",colour = NA),
panel.grid.minor = element_blank(),legend.justification=c(0.85,0.1),legend.position=c(0.85,0.1))
labs(x=NULL,y="长度",title=NULL)
图1 单个柱状图代码
3.以相同的代码套用不同数据,得到若干个单个柱状图(这里我们直接用相同的数据)。
4.将上面单个柱状图代码记为p1,然后调用cowplotR包,代码如图2.
p1<-ggplot(df2, aes(x=does, y=len, fill=supp)) +
geom_bar(position=position_dodge(), stat="identity") +
geom_errorbar(aes(ymin=len-SE, ymax=len+SE),size=0.75,width=0.08,position=position_dodge(0.45))+
scale_y_continuous(breaks=0:20*4) +
scale_x_continuous(breaks=0:10*0.5)+
theme_bw()+
theme(panel.grid.major=element_line(colour=NA),
panel.background = element_rect(fill = "transparent",colour = NA),
plot.background = element_rect(fill = "transparent",colour = NA),
panel.grid.minor = element_blank(),legend.justification=c(0.85,0.1),legend.position=c(0.85,0.1))
labs(x=NULL,y="长度",title=NULL)
library(cowplot)
plot_grid(p1,p1,p1,p1,ncol=2,nrow=2)
图2 组合柱状图代码
5.运行代码。结果如图3: