我有一个表格式的爆炸结果。下面是前三列。第一列是查询ID(在本例中,我们有2个查询;6031753和60317532),第二列是针对查询序列的命中,有3个部分
a) swiss prot id sp|Q10CQ1|
b) gene name MAD14
c) organism ORYSJ
我想制作一个存在的基因的条形图,以及它们在每个查询中出现的次数。
例如第一个查询(60317531)
MAD14 2 times
MAD15 1 time
AGL8 2 time
AP1 3 time
字段:query_id subject_id %_identity
gi|60317531|gb|AAX18712.1| sp|Q10CQ1|MAD14_ORYSJ 84.21
gi|60317531|gb|AAX18712.1| sp|P0C5B1|MAD14_ORYSI 83.40
gi|60317531|gb|AAX18712.1| sp|Q6Q9I2|MAD15_ORYSJ 68.91
gi|60317531|gb|AAX18712.1| sp|Q42429|AGL8_SOLTU 57.20
gi|60317531|gb|AAX18712.1| sp|O22328|AGL8_SOLCO 58.00
gi|60317531|gb|AAX18712.1| sp|Q41276|AP1_SINAL 65.79
gi|60317531|gb|AAX18712.1| sp|D7KWY6|AP1_ARALL 65.79
gi|60317531|gb|AAX18712.1| sp|Q8GTF4|AP1C_BRAOB 64.21
gi|60317532|gb|AAX18713.1| sp|B4YPV4|AP1C_BRAOA 64.21
gi|60317532|gb|AAX18713.1| sp|Q96355|1AP1_BRAOT 64.21
gi|60317532|gb|AAX18713.1| sp|P0DI14|AP1_BRARP
在条形图中,x轴为基因,y轴为频率,查询ID为图的标题。
有什么自动的方法吗?在单个文件中,我有大约40,000个查询,每个查询大约有大约100个命中。
步骤1:使用:
从输出文件中提取第二个颜色awk '{print$2}'
步骤2:然后在vim编辑器中打开文件并输入以下命令:
:%s!*..*_!!g
Step3:使用这个文件绘制r
data <- read.table("ur_file_name.txt", header=F, sep=" ")
barplot(data$V2, xlab="Genes", ylab="Frequency", main="Query ID")