Bio-Graphics
view release on metacpan or search on metacpan
lib/Bio/Graphics/Glyph/allele_tower.pm view on Meta::CPAN
}
}
# if no minor allele is defined, use the small fonts for both
else {
$gd->string(GD::Font->Small,$x1-1, $position + $y1, $alleles[$i], $fg);
}
} # end of for
}
}
;
__END__
=head1 NAME
Bio::Graphics::Glyph::allele_tower - The "allele_tower" glyph
=head1 SYNOPSIS
See <Bio::Graphics::Panel> and <Bio::Graphics::Glyph>.
=head1 DESCRIPTION
This glyph draws a letter for each allele found at a SNP position, one above the other (i.e. in a column). For example:
A
G
See also http://www.hapmap.org/cgi-perl/gbrowse/gbrowse 'genotyped SNPs' for an example.
The common options are available (except height which is calculated
based on the number of alleles). In addition, if you give the glyph
the minor allele frequency (MAF) and indicate which is the minor
allele, the glyph will display these differences.
=head2 GETTING THE ALLELES
To specify the alleles, create an "Alleles" attribute for the feature.
There should be two such attributes. For example, for a T/G
polymorphism, the GFF load file should look like:
Chr3 . SNP 12345 12345 . . . SNP ABC123; Alleles T ; Alleles G
Alternatively, you can pass an "alleles" callback to the appropriate
section of the config file. This option should return the two alleles
separated by a slash:
alleles = sub {
my $snp = shift;
my @d = $snp->get_tag_values('AllelePair');
return join "/",@d;
}
=head2 OPTIONS
. Glyph Colour
. Different colour for alleles on the reverse strand
. Print out the complement for alleles on the reverse strand
. Major allele shown in bold
. Horizontal histogram to show allele frequency
=head3 GLYPH COLOR
The glyph color can be configured to be different if the feature is on the plus or minus strand. Use fgcolor to define the glyph color for the plus strand and bgcolor for the minus strand. For example:
fgcolor = blue
bgcolor = red
For this option to work, you must also set ref_strand to return the strand of the feature:
ref_strand = sub {shift->strand}
=head3 REVERSE STRAND ALLELES
If the alleles on the negative strand need to be the complement of what is listed in the GFF files, (e.g. A/G becomes T/C), set the complement option to have value 1
complement = 1
For this option to work, you must also set ref_strand to return the strand of the feature:
ref_strand = sub {shift->strand}
=head3 MAJOR/MINOR ALLELE
Use the 'minor_allele' option to return the minor allele for the SNP. If you use this option, the major allele will appear in bold type.
=head3 ALLELE FREQUENCY HISTOGRAMS
Use the 'maf' option to return the minor allele frequency for the SNP. If you use this option, a horizontal histogram will be drawn next to the alleles, to indicate their relative frequencies. e.g.
A______
C__
Note: The 'label' option must be set to 1 (i.e. on) and the
'minor_allele' option must return a valid allele for this to work.
=head1 BUGS
Please report them.
=head1 SEE ALSO
L<Bio::Graphics::Panel>,
L<Bio::Graphics::Glyph>,
L<Bio::Graphics::Glyph::arrow>,
L<Bio::Graphics::Glyph::cds>,
L<Bio::Graphics::Glyph::crossbox>,
L<Bio::Graphics::Glyph::diamond>,
L<Bio::Graphics::Glyph::dna>,
L<Bio::Graphics::Glyph::dot>,
L<Bio::Graphics::Glyph::ellipse>,
L<Bio::Graphics::Glyph::extending_arrow>,
L<Bio::Graphics::Glyph::generic>,
L<Bio::Graphics::Glyph::graded_segments>,
L<Bio::Graphics::Glyph::heterogeneous_segments>,
L<Bio::Graphics::Glyph::line>,
L<Bio::Graphics::Glyph::pinsertion>,
L<Bio::Graphics::Glyph::primers>,
L<Bio::Graphics::Glyph::rndrect>,
L<Bio::Graphics::Glyph::segments>,
L<Bio::Graphics::Glyph::ruler_arrow>,
L<Bio::Graphics::Glyph::toomany>,
L<Bio::Graphics::Glyph::transcript>,
L<Bio::Graphics::Glyph::transcript2>,
L<Bio::Graphics::Glyph::translation>,
L<Bio::Graphics::Glyph::allele_tower>,
L<Bio::DB::GFF>,
L<Bio::SeqI>,
L<Bio::SeqFeatureI>,
L<Bio::Das>,
L<GD>
=head1 AUTHOR
Fiona Cunningham E<lt>cunningh@cshl.eduE<gt> in Lincoln Stein's lab E<lt>steinl@cshl.eduE<gt>.
Copyright (c) 2003 Cold Spring Harbor Laboratory
This package and its accompanying libraries is free software; you can
redistribute it and/or modify it under the terms of the GPL (either
version 1, or at your option, any later version) or the Artistic
License 2.0. Refer to LICENSE for the full license text. In addition,
please see DISCLAIMER.txt for disclaimers of warranty.
=cut
( run in 0.707 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )