参考资料:
https://cran.r-project.org/web/packages/GGEBiplots/GGEBiplots.pdf
1、数据整理
使用GGEBiplots包绘制双标图,分析用数据是二维数据表(行表示品种或基因型,列表示试验点或环境)。当我们的数据表是一维数据表时(类似于数据库表格的形式)可以使用GGEBiplots包自带的stattable()进行整理。
# 用随机数搭建一维表数据集
simdata<-data.frame(
expand.grid(
Genotype=1:10,
Environment=1:10,
Rep=1:3
),
Outcome=rnorm(300)
)
# 数据展示
head(simdata)
# 数据转换
meantab<-stattable(
rowfactor=simdata$Genotype,
columnfactor=simdata$Environment,
outcome=simdata$Outcome,
FUN=mean
)
# 转换后数据展示
meantab
2、ggplot绘制GGE双标图
GGEBiplots包提供了一个将GGE双标图绘制为ggplot对象的函数,以便于大家对GGE双标图进行自定义绘制。函数为:GGEPlot()。函数使用格式如下:
GGEPlot(
GGEModel,
type=1,
d1=1,
d2=2,
selectedE=NA,
selectedG=NA,
selectedG1=NA,
selectedG2=NA,
colSegment="red",
colHULL="black",
largeSize=4.5,
axis_expand=1.2,
axislabels=TRUE,
axes=TRUE,
limits=TRUE,
titles=TRUE,
footnote=TRUE,
textGen=element_text(
family="",
face=1,
color="forestgreen",
size=4,
hjust=0,
vjust=0,
angle=0
),
textEnv=element_text(
family="",
face=1,
color="blue",
size=4,
hjust=0,
vjust=0,
angle=0
)
)
参数讲解:
type:
type=1,为基础双标图;
type=2,单个试验点分析图,即函数ExamineEnv();
type=3,单个品种分析图,即函数ExamineGen();
type=4,环境间关系功能图,即函数EnvRelationship();
type=5,品种间两两比较图,即函数CompareGens();
type=6,哪个赢在哪里功能图,即函数WhichWon();
type=7,区分力和代表性功能图,即函数DiscRep();
type=8,理想环境分析图,即函数RankEnv();
type=9,高产性和稳定性功能图,即函数MeanStability()
type=10,理想品种分析图,即函数RankGen()。
d1:位于x轴上的主成分,默认值是1,即第一主成分。
d2:位于y轴上的主成分,默认值是2,即第二主成分。
selectedE:当type=2时,需以文本的形式指定具体环境。
selectedG:当type=3时,需以文本的形式指定具体基因型。
selectedG1 和 selectedG2 :当type=5时,需以文本的形式指定需要比较的两个基因型。
colSegment:线段和同心圆的线条颜色,默认为红色。
colHull:当type=6时,连接最外围基因型数据点线段的颜色,默认为黑色。
largeSize:当type=5时,两个比较品种的标签字体;当type=6时,最外围基因型数据点的标签字体。默认为4.5。
axes:是否显示x轴和y轴,默认显示。
limits:是否对轴线进行自动缩放,默认是。
titles:是否自动生成标题,默认是。
footnote:是否自动生成脚注,默认是。
textGen和textEnv:用于基因型和环境的标签设置。
# 加载GGEBiplots包
library(GGEBiplots)
# 加载自带的Ontario数据集
data(Ontario)
# 数据转换为GGE模型
GGE1<-GGEModel(Ontario)
# 绘制基础双标图
GGEPlot(GGE1)
# 绘制“哪个赢在哪里”功能图
GGEPlot(GGE1,type =6)
# 绘制品种间两两比较图
GGEPlot(GGE1,type = 5,
selectedG1="cas",
selectedG2="luc")