使用脚本统计vcf文件中每条染色体变异数目
2022-10-21 本文已影响0人
花生学生信
现在有syri生成的vcf变异文件分布在每个文件夹里,提取每条染色体的变异数目。
脚本:
##首先看看两个vcf文件的染色体分布情况
for ((i=26;i<=33;i++));
do
echo $i
###分开提取
cat ${i}/syri.vcf |grep -v '^#' |cut -f 1 |sort |uniq -c > $i.txt
##或者合在一起
cat ${i}/syri.vcf |grep -v '^#' |cut -f 1 |sort |uniq -c >> a.txt
#cat $i |cut -f 1 | >> a
#paste 26.txt 27.txt 28.txt 29.txt 30.txt 31.txt 32.txt 33.txt >all
done
使用a.txt 画图,将数据读入R中,
绘制箱型图,
libray(ggplot2)
####数据+映射+绘图
c<-ggplot(b,aes(x=CHR,y=NUM))+geom_boxplot()
###加均值及标准差
c + geom_violin(trim = FALSE) +
stat_summary(fun.data="mean_sdl", fun.args = list(mult=1),
geom="pointrange", color = "red")
c
###加颜色
d=c + geom_boxplot(aes(color = CHR))
#或
d=c + geom_boxplot(aes(fill = CHR))
##去边框和底纹
d+theme_bw() +
theme(panel.grid.major=element_line(colour=NA),
panel.background = element_rect(fill = "transparent",colour = NA),
plot.background = element_rect(fill = "transparent",colour = NA),
panel.grid.minor = element_blank())
哎,写毕业论文去了