育种数据分析之放飞自我分享 http://blog.sciencenet.cn/u/yijiaobai 关注:生物统计,数量遗传,混合线性模型,生物信息,R,Perl,Python,GWAS,GS相关方法,文章及代码

博文

如何使用R语言做Biplot双标图

已有 11893 次阅读 2018-9-28 19:41 |个人分类:农学统计|系统分类:科研笔记

双标图在品种鉴定中比较常用, 下面介绍如何使用R语言进行GGE双标图的绘制.

介绍GGEBiplotGUI软件包的使用

示例数据

处理步骤

  • 如何没有按照GGEBiplotGUI, 那么通过install.packages命令进行安装

  • 整理数据, 列为地点, 行为品种

  • 导入数据, 行名为品种名, 列名为地点(行头), 第一列为第一个地点的产量

  • 使用GGEBiplot调入GGE窗口, 通过鼠标选择分析.

示例流程

# install.packages("GGEBiplotGUI")
library(GGEBiplotGUI)
data(Ontario)
head(Ontario)
GGEBiplot(Ontario)

数据类型

image.png

操作

1, 交互界面: 运行完GGEBiplot(Ontario)之后, 会出现下面界面, 这是Java写的窗口, 可以通过鼠标进行操作. 点击OK.

image.png

2, 默认出现的是双标图, 蓝色的线为地点, 绿色的点为品种.
这个图可以描述环境之间的关系(通过环境线的夹角来判断)
image.png

3, 通过Biplot Tools可以选择不同的类型, 比如选择Which Won Where
image.png

结果:
image.png

4, 丰产性和稳定性

image.png

5, 它也可以画3D的双标图
image.png

使用R语言导入数据, 进行分析

从头导入数据:

  • 1, 加入dat是三列的格式: 品种,地点, 产量
    data下载: yan.csv, 下载数据后, 将其放在D盘根目录下
    data
    image.png

  • 2, R语言读入数据

代码:

dat = read.table("d:/yan.csv",header = T, sep=",")
head(dat)

结果:

> head(dat)
  gen  env yield
1 Ann BH93 4.460
2 Ari BH93 4.417
3 Aug BH93 4.669
4 Cas BH93 4.732
5 Del BH93 4.390
6 Dia BH93 5.178

对数据进行转化:

if (!requireNamespace("reshape2")) install.packages("reshape2")

x = reshape2::dcast(dat,gen~env)
rownames(x) = x$gen
re = x[,-1]
re

结果:

> re
     BH93  EA93  HW93  ID93  KE93  NN93  OA93  RN93  WP93
Ann 4.460 4.150 2.849 3.084 5.940 4.450 4.351 4.039 2.672
Ari 4.417 4.771 2.912 3.506 5.699 5.152 4.956 4.386 2.938
Aug 4.669 4.578 3.098 3.460 6.070 5.025 4.730 3.900 2.621
Cas 4.732 4.745 3.375 3.904 6.224 5.340 4.226 4.893 3.451
Del 4.390 4.603 3.511 3.848 5.773 5.421 5.147 4.098 2.832
Dia 5.178 4.475 2.990 3.774 6.583 5.045 3.985 4.271 2.776
Ena 3.375 4.175 2.741 3.157 5.342 4.267 4.162 4.063 2.032
Fun 4.852 4.664 4.425 3.952 5.536 5.832 4.168 5.060 3.574
Ham 5.038 4.741 3.508 3.437 5.960 4.859 4.977 4.514 2.859
Har 5.195 4.662 3.596 3.759 5.937 5.345 3.895 4.450 3.300
Kar 4.293 4.530 2.760 3.422 6.142 5.250 4.856 4.137 3.149
Kat 3.151 3.040 2.388 2.350 4.229 4.257 3.384 4.071 2.103
Luc 4.104 3.878 2.302 3.718 4.555 5.149 2.596 4.956 2.886
m12 3.340 3.854 2.419 2.783 4.629 5.090 3.281 3.918 2.561
Reb 4.375 4.701 3.655 3.592 6.189 5.141 3.933 4.208 2.925
Ron 4.940 4.698 2.950 3.898 6.063 5.326 4.302 4.299 3.031
Rub 3.786 4.969 3.379 3.353 4.774 5.304 4.322 4.858 3.382
Zav 4.238 4.654 3.607 3.914 6.641 4.830 5.014 4.363 3.111
  • 3, 然后使用GGEBiplotGUI软件包实现

GGEBiplot(re)

结果进入窗口软件gGEBiplotGUI:

image.png

全部代码:

dat = read.table("d:/yan.csv",header = T, sep=",")
head(dat)
if (!requireNamespace("reshape2")) install.packages("reshape2")
x = reshape2::dcast(dat,gen~env)
rownames(x) = x$gen
re = x[,-1]
re
GGEBiplot(re)




https://blog.sciencenet.cn/blog-2577109-1137609.html

上一篇:chrom markdown-here 插件测试
下一篇:如何使用摇床通过微信运动造假进而利用朋友圈进行市场推广
收藏 IP: 106.39.56.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-20 12:38

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部