[Bioperl-l] Re: BioGraphics tutorial problem
Christopher Fields
cjfields at uiuc.edu
Fri Aug 8 17:54:35 EDT 2003
Scott,
I have tested the Bio::Graphics module as well, using RedHat Linux 9 and
Bioperl 1.2.2. Everything worked well, until.... I installed Bioperl on
my wife's IBook under MacOS X 10.2 (BTW, everything went well). Trying
the same tutorial gave the result that Laurence described (no labels).
Is it possible that a font is missing from some distributions that
Bio::Graphics requires?
BTW (and a little off topic), I can test out Bioperl distributions on
Windows XP as well as the above two systems. I am operating a dual-boot
system; all three operating systems have Perl 5.8.0 installed (WinXP has
ActiveState Perl).
Chris Fields
Postdoctoral Researcher - Dept. of Biochemistry
University of Illinois at Urbana-Champaign
On Fri, 2003-08-08 at 14:03, Scott Cain wrote:
> Laurence and Wes,
>
> The cold was of the 24-hour variety so my head has cleared, and I have a
> solution for the BioGraphics tutorial problem. While it will not work
> exactly as written in Lincoln's tutorial with BioPerl 1.2.2, it will
> work with BioPerl 1.3 (when it is released). I've created a perl script
> that generates similar output via callbacks that works with BioPerl
> 1.2.2. I added a few bells and whistles--my script also puts a
> description (a secondary label) and colored the glyphs according to
> score.
>
> Here's the script:
> #!/usr/local/bin/perl -w
>
> use strict;
> use Bio::Graphics;
> use Bio::SeqFeature::Generic;
>
> my $panel= Bio::Graphics::Panel->new(-length =>1000,-width =>800);
> my $track=$panel->add_track(-glyph =>'generic',
> -label => sub{my $self=shift;
> return $self->seq_id;},
> -description=> sub{my $self=shift;
> return $self->score;},
> -bgcolor => sub{my $self=shift;
> my $score = $self->score;
> if ($score >= 1000) {
> return 'red';
> } else {
> return 'green';
> }
> });
>
> while (<DATA>)
> {
> chomp;
> next if /^\#/;
> my ($name,$score,$start,$end)=split /\s+/;
> my $feature=Bio::SeqFeature::Generic->new(-seq_id=>$name,
> -score=>$score,
> -start=>$start,
> -end=>$end);
> $track->add_feature($feature);
> }
>
> print $panel->png;
>
> __DATA__
> #hit score start end
> truc1 381 2 200
> truc2 210 2 210
> truc3 800 2 200
> truc4 1000 380 921
> truc5 812 402 972
> truc6 1200 400 970
> bum 400 300 620
> pres1 127 310 700
> -------------------------------------------------
>
> Scott
>
> On Thu, 2003-08-07 at 05:08, Laurence Amilhat wrote:
> > Dear Scott,
> >
> > Thank you very much for your answer.
> > The http://www.gmod.org/BioGraphicsTest.png is what am I expecting.
> > I installed the BioPerl-1.2.2 version. I used the tutorial from
> > Lincoln Stein at :
> > http://stein.cshl.org/genome_informatics/BioGraphics
> >
> > So, the only way to get my script working is to use bio-perl-live from
> > CVS?
> > I saw that I need a secure ssh (I have one), a CVS and an account to
> > run script on bioperl live.
> > but I don't know what is CVS?
> >
> > Thank you,
> >
> > Sincerely,
> >
> > Laurence
> >
> >
> >
> >
> >
> >
> > At 15:52 06/08/2003 -0400, you wrote:
> > > Laurence,
> > >
> > > I ran a script very similar to what you are using (the code I used
> > > is
> > > below), and I didn't have any problems, at least not if what is
> > > expected
> > > is the same as this: http://www.gmod.org/BioGraphicsTest.png.
> > >
> > > I suspect you are having a version problem. I am using bioperl-live
> > > (from CVS), but when I installed bioperl-1.2.2, it failed in the way
> > > you
> > > describe. Where is the tutorial you are reading? Perhaps it is not
> > > in
> > > sync with the most recent version of released bioperl.
> > >
> > > Here is the script I used:
> > > #!/usr/local/bin/perl -w
> > >
> > > use strict;
> > > use Bio::Graphics;
> > > use Bio::SeqFeature::Generic;
> > >
> > > my $panel= Bio::Graphics::Panel->new(-length =>1000,-width =>800);
> > > my $track=$panel->add_track(-glyph =>'generic',-label =>1);
> > >
> > > while (<DATA>)
> > > {
> > > chomp;
> > > next if /^\#/;
> > > my ($name,$score,$start,$end)=split /\s+/;
> > > warn "$name\n";
> > > my $feature=
> > > Bio::SeqFeature::Generic->new(-display_name=>$name,-score=>$score,-start=>$start,-end=>$end);
> > > $track->add_feature($feature);
> > > }
> > >
> > > print $panel->png;
> > >
> > > __DATA__
> > > #hit score start end
> > > truc1 381 2 200
> > > truc2 210 2 210
> > > truc3 800 2 200
> > > truc4 1000 380 921
> > > truc5 812 402 972
> > > truc6 1200 400 970
> > > bum 400 300 620
> > > pres1 127 310 700
> > >
> > > Scott
> > >
> > > On Wed, 2003-08-06 at 13:31, bioperl-l-request at portal.open-bio.org
> > > wrote:
> > > > I try to learn how to use the module Bio::Graphics.
> > > > I found he How To from Lincoln Stein on the web. I try to practice
> > > with the
> > > > examples, it's working except for the labels of the features that
> > > don't
> > > > appear on my figure.
> > > > Does anybody ever use this module?
> > >
> > > --
> > > ------------------------------------------------------------------------
> > > Scott Cain, Ph. D.
> > > cain at cshl.org
> > > GMOD Coordinator (http://www.gmod.org/)
> > > 216-392-3087
> > > Cold Spring Harbor Laboratory
> >
> >
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > INRA, UMR INRA/UBP Amélioration et Santé des Plantes
> > 234 avenue du Brézet
> > 63039 Clermont-Ferrand Cedex 2
> >
> > Tel 04 73 62 48 37
> > Fax 04 73 62 44 53
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
More information about the Bioperl-l
mailing list