设为首页收藏本站
开启辅助访问
切换到窄版

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2319|回复: 1

Bioperl:把Genbank格式的序列转换为基因结构图

[复制链接]
发表于 2012-5-16 16:19:01 | 显示全部楼层 |阅读模式
下面是一个BioPerl的小程序,可以把Genbank格式的序列转换为png图片-基因结构图,显示序列的长度,CDS区,exon区,STS区等。简单地讲就是把该序列的Genbank格式里的信息用图片表示。 这个程序来源于网络。
  下面举个例子,以NM_172587为例。
  NM_172587的Genbank格式下面的链接,另存为文件名’NM_172587.gb’:
  http://www.liucheng.name/entrez/entrez.php?acc=NM_172587&db=nucleotide&format=gb&start=Submit
  下面是Bioperl脚本:
  #!/usr/bin/Perl -w
use Bio::Graphics;
  use Bio::SeqIO;
  use Bio::SeqFeature::Generic;
  my $file = shift    or die "provide a sequence file as the argument";
  my $io = Bio::SeqIO->new(-file=>$file)    or die "couldn't create Bio::SeqIO";
  my $seq = $io->next_seq    or die "couldn't find a sequence in the file";
  my @features = $seq->all_SeqFeatures;# sort features by their primary tags
my %sorted_features;
  for my $f (@features) {
  my $tag = $f->primary_tag;
  push @{$sorted_features{$tag}},$f;
  }
  
  my $panel = Bio::Graphics::Panel->new(
    -length => $seq->length,
    -key_style => 'between',
    -width => 800,
    -pad_left => 10,
    -pad_right => 10
   );
  
  $panel->add_track(
          arrow =>Bio::SeqFeature::Generic->new(-start => 1,-end => $seq->length),
    -bump => 0,
    -double=>1,
    -tick => 2
    );
  
  $panel->add_track(generic =>Bio::SeqFeature::Generic->new(-start => 1,-end => $seq->length,-bgcolor => 'blue', -label => 1));# general case
  my @colors = qw(cyan orange blue purple green  chartreuse magenta yellow aqua);
  my $idx = 0;   
  
  for my $tag (sort keys %sorted_features)
  {
          my $features = $sorted_features{$tag};
    $panel->add_track(
       $features,-glyph => 'generic',
       -bgcolor => $colors[$idx++ % @colors],
       -fgcolor => 'black',
       -font2color => 'red',
       -key => "${tag}s",
       -bump => +1,
       -height => 8,
       -label => 1,
       -description => 1
     );   
  }
  
  print $panel->png;
  存为文件名:graphics.pl
  用法:
  perl graphics.pl NM_172587.gb >1.png
  结果就生成了一个名为1.png的图片,如下图

  当然了,用这个脚本首先你的电脑已经装好了Bioperl。这个就不多讲了~
发表于 2012-9-28 15:48:03 | 显示全部楼层
图呢,在哪里
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|生物信息学论坛 ( 蜀ICP备09031721号  

GMT+8, 2017-3-30 06:53 , Processed in 0.103140 second(s), 22 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表