lmv.linkage.plot(mapthis=hyper,outfile= "a.pdf",mapthese=c( 1, 4, 6, 15),main= "genetic map")
(向左滑动查看更多)
使用qtl包中hyper数据,mapthis是lmv.linkage.plot函数输入的数据集参数,第一列是连锁群编号,第二列是图距信息,第三列是标记名称,此参数为必给的参数,outfile是输出的pdf图片名称,必给的参数,mapthese用于选择绘制那些连锁群,可选参数,不设置的话,会默认将所有连锁群都绘制,main设置标题。
2、 变更部分标记名称颜色
代码如下:
flist [[1]]<- list(locus = c( "D1Mit123", "D1Mit105", "D6Mit273", "D15Mit56", "D15Mit156"),col=c( "red"))
flist [[2]]<- list(locus = c( "D4Mit149", "D4Mit237", "D6Mit36"),col=c( "blue"))
lmv.linkage.plot(hyper, "b.pdf",mapthese=c( 1, 4, 6, 15),markerformatlist=flist)
(向左滑动查看更多)
先创建一个有两个成分的列表,只想展示一个颜色就用一个成分的列表。locus给标记名称的向量,col给颜色的向量。Markerformatlist给创建的列表。
3、 颜色设置
代码如下:
lmv.linkage.plot(hyper, "c.pdf",
mapthese=c(1,4,6,15),
pdf.bg= "grey",col.lgtitle= "green",
lg.col= "yellow",lcol= "red",rcol= "orange")
(向左滑动查看更多)
pdf.bg:pdf背景色
col.lgtitle:连锁群名称颜色
lg.col:连锁群柱子颜色
lcol:遗传位置label的颜色
Rcol:标记名称label的颜色
4、 字体、字号设置
代码如下:
lmv.linkage.plot(hyper, "d.pdf",mapthese=c(1,4,6,15),pdf.bg= "grey",col.lgtitle= "green", pdf.height=8,lg.col= "yellow",lcol= "red",rcol= "orange", lfont=1,lcex=1.2,rfont=4,rcex=2,font.lgtitle=3,cex.lgtitle=3)
(向左滑动查看更多)
lfont:遗传位置label的字体设置,1代表纯文本,2代表粗体,3代表斜体,4代表粗斜体
lcex:遗传位置label的字号大小设置
rfont:标签label的字体设置
rcex:标签label的字号大小设置
font.lgtitle:连锁群编号字体设置
cex.lgtitle:连锁群编号字号大小设置
5、 部分染色体柱子上色
代码如下:
chr = c(1, 4, 6, 15)
s = c(82,35,9.8,7.7)
e = c(94,47,21.9,13.1)
col = c( "pink", "blue", "blue", "green")
sectcoldf <- data.frame(chr, s, e, col,stringsAsFactors = FALSE)
lmv.linkage.plot(hyper, "e.pdf",mapthese=c(1,4,6,15), sectcoldf=sectcoldf)
(向左滑动查看更多)
sectcoldf为连锁群柱子部分上色参数,上色信息以data.frame格式储存,每一行是一个上色区域,第一列是连锁群编号,第二列是对应连锁群上色起始,第三列是上色终止,第四列是对应的颜色。
6、 标签显示形式设置
代码如下:
lmv.linkage.plot(hyper, "f.pdf",mapthese=c( 1, 4, 6, 15),ruler= TRUE,maxnbrcolsfordups = 1)
(向左滑动查看更多)
ruler=TRUE代表用纵坐标表示遗传位置,FALSE代表以位置label的形式表示遗传位置,默认FALSE。
Maxnbrcolsfordups 表示标记label用几列表示,默认3.
7、 相同标记名称连线
代码如下:
data(carrot)
lmv.linkage.plot(mapthis = carrot,outfile = "g.pdf")
(向左滑动查看更多)
函数会自动将连锁群之间标记名一样的标记进行连线,autoconnadj=FALSE可以关闭此功能
8、 标记名称不同连线
代码如下:
fromchr = c(1,1,4)
fromlocus = c( "D1Mit123", "D1Mit105", "D4Mit53")
tochr = c(4,4,6)
tolocus = c( "D4Mit149", "D4Mit108", "D6Mit273")
conndf <- data.frame(fromchr,fromlocus,tochr,tolocus,stringsAsFactors = FALSE)
lmv.linkage.plot(hyper, "h.pdf",mapthese = c(1,4,6,15),conndf = conndf)
(向左滑动查看更多)
需要连线的标记对以data.frame存储,每行一对连线,第一列是线一端的起始连锁群编号,第二列是起始的标记名称,第三列是线另一端终止连锁群编号,第四列是终止的标记名称。
9、 翻转连锁群顺序
图一为原始图
图二为翻转图
代码如下:
lmv.linkage.plot(hyper, "i.pdf",mapthese = c(1,4),revthese = "1")
(向左滑动查看更多)
revthese参数后面接需要翻转的连锁群编号
10、 密度图谱绘制
代码如下:
data(oat)
lmv.linkage.plot(oat, "j.pdf",mapthese=c( "Mrg01", "Mrg02", "Mrg03", "Mrg05"),denmap= TRUE)
(向左滑动查看更多)
denmap是控制是否画密度图的开关,画密度图的同时不显示标记名称和遗传位置信息。
11、QTL绘制
qtldf < -data.frame(
chr= character,
qtl= character,
so= numeric,
si= numeric,
ei= numeric,
eo= numeric,
col= character,
stringsAsFactors= FALSE
)
qtldf< -rbind( qtldf,
data.frame(
chr= "6",
qtl= "Trait1",
so= 25,
si= 40.4,
ei= 40.4,
eo= 56.8,
col= "red"
))
lmv.linkage.plot( hyper," k.pdf", mapthese= c(1,4,6,15),qtldf= qtldf)
(向左滑动查看更多)
qtldf参数后接qtl信息,qtl信息存储在data.frame格式的qtldf里,一行一个qtl信息,第一列是连锁群编号,第二列是qtl名,第三列是qtl外区间起始,第四列是qtl内区间起始,第五列是qtl内区间终止,第六列是qtl外区间终止,第七列是颜色。
以上是LinkageMapView包常见的几个用法,LinkageMapView包可以接收R/qtl的输出结果也可以单独整理成本文输入,输入灵活,并且可以绘制高密度的图谱,更适用于现在的高通量测序下构建的遗传图谱。感兴趣的同学,赶快去试试吧!
文:李莹莹 返回搜狐,查看更多