如何从BLAST结果中创建条形图

时间:2015-08-19 08:42:24

标签: blast jqbargraph

我有表格格式的爆炸结果。以下是前三列。第一列是查询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 个答案:

答案 0 :(得分:0)

步骤1:使用以下方法从输出文件中提取第二个Col:

awk '{print$2}'

步骤2:然后在vim编辑器中打开文件并输入以下命令:

:%s!*..*_!!g

步骤3:使用此文件绘制R。

data <- read.table("ur_file_name.txt", header=F, sep=" ")
barplot(data$V2, xlab="Genes", ylab="Frequency", main="Query ID")