LD衰减图

Python018

LD衰减图,第1张

LD衰减距离指的是,当平均LD系数衰减到一定大小(最大值的一半/0.5以下)的时候,对应的物理距离。通常用LD衰减距离来描述LD衰减速度。LD衰减速度越快,即衰减距离越小,说明该群体遗传多样性越高;LD衰减速度越慢,通常驯化程度越高,选择强度越大,导致遗传多样性下降。

LD系数衰退速度会受到不同因素的影响而有所不同。常见的因素包括:

1)物种类型LD存在的本质是两个位点的连锁遗传导致的相关性。但这种相关性理论上会随着世代的增加、重组次数的增加而不断下降。所以,那些繁殖力强、时代间隔短的物种(例如,昆虫),其LD衰减的速度是非常快的。例如在家蚕和野蚕群体中,LD系数下降到最大值的1/2仅仅需要46bp和7bp的距离

2)群体类型相同物种的不同群体,由于其遗传背景不同,LD衰减速度也存在很大的差异。驯化选择,会导致群体遗传多样性下降,位点间的相关性(连锁程度)加强。所以,通常驯化程度越高,选择强度越大的群体,LD衰减速度是最慢的。例如,栽培稻比野生稻通常更大的LD衰减距离。类似的,自然选择、遗传漂变导致的群体遗传多样性下降,也会减慢LD衰减的速度。

3)在染色体的位置染色体不同区域的LD衰减距离而是不同的。通常着丝粒区更难重组,所以LD衰减更慢。而基因组上那些受选择的区域相比普通的区域,LD衰减速度也是更慢的。

发现不止1000kb

用poplddecay画图时会返回有以下内容的文件,前两列是画图所需的的数据

其中列名#Dist、Mean_r^2在R语言中无法识别,所以首先要改列名

基础知识参考文章:

https://links.jianshu.com/go?to=http%3A%2F%2Fwww.omicshare.com%2Fforum%2Fthread-878-1-1.html

q1, 首先要确定是barplot还是hist,如果是barplot的话,应该不存在breaks的问题,因为barplot的传入参数是个矩阵;

我假设你要画的是个hist,我偶遇过这个问题,我的理解是hist的breaks的值要能被范围整除才行;比如x=1:200,break=7的话,就只能画出4个柱来,但如果breaks=10就没问题;基本上是这样的,偶尔也有例外;比如break=5就不行....奇怪得很

最后,没办法的办法,就只能用barplot代替hist了,barplot肯定不会有这个问题,统计下hist参数中的分布情况,转换成矩阵,用barplot吧;

q2, 貌似一般都用一组因素把这些类别区分开,我用abcde,表示你的小学,中学...了,比如这样:

a=1:7b=8:10c=c(9,10,11)d=c(40,55)e=100:110

f=factor(c(rep(1,sum(length(a),length(b),length(c))),rep(2,sum(length(d),length(e)))))#先用c()生成数组,在转换成factor,其实数组也ok的,不过plot()中两个数组和factor不一样 

x=c(a,b,c,d,e)

plot(x~f)

q3, 就我所知不行;yes或no一定也要是能映射到x,y范围内的点才行;你是想表示分类结果吗?如果是的话,通常用颜色,或者在点旁边的text表示。

q4, 举个例子吧

x=-50:50

y=x^2+x+1

z=10*abs(x)+1

 

plot(x,y,type='l')

lines(x,z,lty=3)

legend(c('type1','type2'), x=-20,y=2500, col=c('black','red'), lty=c(1,3))

legend的x和y是legend的左上角,匿名参数是类型名称,col,lty,pch 是对应的颜色,线类型,和点类型。

最后,我现在多用ggplot2,如果不抵触的话可以看看,和R的基础作图包思路不是很一样,但是图很清新的;

如果还有问题,建议把数据集data.frame粘贴几行上来,我也试试;