ggplot2箱线图绘制规范


今天一朋友想学R语言,问我如何学,我建议是针对问题,如何针对问题,比如文献找到一个图,照着画出来就对了。他给我找了个箱线图,这个百度都有代码,但关于数据的排列,转换,提取,我觉得对于小白肯定迷迷糊糊,因为有的画图软件的数据排列方式的思维方式已经固定,可能你不能很好的接受ggplot的数据排列。

1、模板

他发我的模板和他自己做的
在这里插入图片描述

2、数据

他发我的数据格式,一看就知道是那个软件,稍微整理后保存csv
在这里插入图片描述

3、导入数据整理

变量类型转换、数据列转换、数据提取

library(ggplot2)
library(dplyr)
library(tidyr)

data.xz <- read.csv("xz20210112.csv") ##导入数据
class(data.xz)##查看数据类型data.frame数据框,matric矩阵,list表(这个复杂)
str(data.xz)##查看变量类型factor因子型,int整数(数值型)
data.xz$CO2 <- as.factor(data.xz$CO2.concentration)##创造变量
str(data.xz)##查看变量类型
summary(data.xz)##数据基本概况
data.xz1 <- gather(data = data.xz,key = "IT",value = "value",3:6)
summary(data.xz1)
##提取数据
data.xz1_A <- filter(data.xz1,IT=="IT50A" | IT== "IT90A")
data.xz1_G <- filter(data.xz1,IT=="IT50g" | IT== "IT90g")

4、画图

背景、标签、theme设定、图例、坐标轴lab细节

##画图
ln.a <- ggplot(data = data.xz1_LNA,aes(x=CO2,y=value,fill=IT))+
  stat_boxplot(geom = "errorbar",position = position_dodge())+
  geom_boxplot()+
  geom_text(data = data.xz1_LNA_max,
               aes(label = c("c","c","a","a","bc","bc","a","a","ab","b","a","a"),
                   x=data.xz1_LNA_max$CO2,
                   y=data.xz1_LNA_max$value.max+20),
               position = position_dodge(0.7),family="RMN",cex=4)+
  geom_text(aes(label="LN",x=6,y=500,family="RMN"))+
  ylab(expression(paste("S"," (","  ",ha^-1,")")))+xlab(expression(paste("O"[2]," ","Concentration")))+
  theme_bw()+
  guides(fill=guide_legend(title=NULL))##去除图例标题
  ln.a

5 最终图

在这里插入图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值