NAME¶
Bio::Graphics::Glyph::segments - The "segments" glyph
SYNOPSIS¶
See L<Bio::Graphics::Panel> and L<Bio::Graphics::Glyph>.
DESCRIPTION¶
This glyph is used for drawing features that consist of discontinuous segments.
Unlike "graded_segments" or "alignment", the segments are
a uniform color and not dependent on the score of the segment.
METHODS¶
This module overrides the
maxdepth() method to return 1 unless explicitly
specified by the -maxdepth option. This means that modules inheriting from
segments will only be presented with one level of subfeatures. Override the
maxdepth() method to get more levels.
OPTIONS¶
The following options are standard among all Glyphs. See Bio::Graphics::Glyph
for a full explanation.
Option Description Default
------ ----------- -------
-fgcolor Foreground color black
-outlinecolor Synonym for -fgcolor
-bgcolor Background color turquoise
-fillcolor Synonym for -bgcolor
-linewidth Line width 1
-height Height of glyph 10
-font Glyph font gdSmallFont
-connector Connector type 0 (false)
-connector_color
Connector color black
-label Whether to draw a label 0 (false)
-description Whether to draw a description 0 (false)
-strand_arrow Whether to indicate 0 (false)
strandedness
-hilite Highlight color undef (no color)
In addition, the following glyph-specific options are recognized:
-draw_dna If true, draw the dna residues 0 (false)
when magnification level
allows.
-draw_target If true, draw the dna residues 0 (false)
of the TARGET sequence when
magnification level allows.
See "Displaying Alignments".
-draw_protein_target If true, draw the protein residues 0 (false)
of the TARGET sequence when
magnification level allows.
See "Displaying Alignments".
-ragged_extra When combined with -draw_target, 0 (false)
draw extra bases beyond the end
of the alignment. The value is
the maximum number of extra
bases.
See "Displaying Alignments".
-ragged_start Deprecated option. Use
-ragged_extra instead
-show_mismatch When combined with -draw_target, 0 (false)
highlights mismatched bases in
the mismatch color.
Can be 0 (don't display);
1 (display when the DNA fits);
or another positive integer
(display when the region in
view is <= this value).
See "Displaying Alignments".
-mismatch_only When combined with -draw_target, 0 (false)
draws only the mismatched bases
in the alignment. Implies
-show_mismatch.
See "Displaying Alignments".
-mismatch_color The mismatch color to use 'lightgrey'
-insertion_color The color to use for insertions 'green'
relative to the reference.
-deletion_color The color to use for deletions 'red'
relative to the reference.
-indel_color The color to use for indels, used 'lightgrey'
only if -insertion_color or
-deletion_color are absent
-true_target Show the target DNA in its native 0 (false)
(plus strand) orientation, even if
the alignment is to the minus strand.
See "Displaying Alignments".
-realign Attempt to realign sequences at 0 (false)
high mag to account for indels.
See "Displaying Alignments".
If the -draw_dna flag is set to a true value, then when the magnification is
high enough, the underlying DNA sequence will be shown. This option is
mutually exclusive with -draw_target. See Bio::Graphics::Glyph::generic for
more details.
The -draw_target, -ragged_extra, and -show_mismatch options only work with
seqfeatures that implement the
hit() method
(Bio::SeqFeature::SimilarityPair). -draw_target will cause the DNA of the hit
sequence to be displayed when the magnification is high enough to allow
individual bases to be drawn. The -ragged_extra option will cause the
alignment to be extended at the extreme ends by the indicated number of bases,
and is useful for looking for polyAs and cloning sites at the ends of ESTs and
cDNAs. -show_mismatch will cause mismatched bases to be highlighted in with
the color indicated by -mismatch_color. A -show_mismatch value of
"1" will highlight mismatches only when the base pairs are
displayed. A positive integer will cause mismatches to be shown whenever the
region in view is less than or equal to the requested value.
At high magnifications, minus strand matches will automatically be shown as
their reverse complement (so that the match has the same sequence as the plus
strand of the source dna). If you prefer to see the actual sequence of the
target as it appears on the minus strand, then set -true_target to true.
Note that -true_target has the opposite meaning from -canonical_strand, which is
used in conjunction with -draw_dna to draw minus strand features as if they
appear on the plus strand.
Displaying Alignments¶
When the
-draw_target option is true, this glyph can be used to display
nucleotide alignments such as BLAST, FASTA or BLAT similarities. At high
magnification, this glyph will attempt to show how the sequence of the source
(query) DNA matches the sequence of the target (the hit). For this to work,
the feature must implement the
hit() method, and both the source and
the target DNA must be available. If you pass the glyph a series of
Bio::SeqFeature::SimilarityPair objects, then these criteria will be
satisified.
Without additional help, this glyph cannot display gapped alignments correctly.
To display gapped alignments, you can use the Bio::Graphics::Brower::Realign
module, which is part of the Generic Genome Browser package
(
http://www.gmod.org). If you wish to install the Realign module and not the
rest of the package, here is the recipe:
cd Generic-Genome-Browser-1.XX
perl Makefile.PL DO_XS=1
make
make install_site
If possible, build the gbrowse package with the DO_XS=1 option. This compiles a
C-based DP algorithm that both gbrowse and gbrowse_details will use if they
can. If DO_XS is not set, then the scripts will use a Perl-based version of
the algorithm that is 10-100 times slower.
The display of alignments can be tweaked using the -ragged_extra,
-show_mismatch, -true_target, and -realign options. See the options section
for further details.
There is also a
-draw_protein_target option, which is designed for
protein to nucleotide alignments. It draws the target sequence every third
base pair and is supposed to align correctly with the forward and reverse
translation glyphs. This option is experimental at the moment, and may not
work correctly, to use with care.
BUGS¶
Please report them.
SEE ALSO¶
Bio::Graphics::Panel, Bio::Graphics::Glyph, Bio::Graphics::Glyph::arrow,
Bio::Graphics::Glyph::cds, Bio::Graphics::Glyph::crossbox,
Bio::Graphics::Glyph::diamond, Bio::Graphics::Glyph::dna,
Bio::Graphics::Glyph::dot, Bio::Graphics::Glyph::ellipse,
Bio::Graphics::Glyph::extending_arrow, Bio::Graphics::Glyph::generic,
Bio::Graphics::Glyph::graded_segments,
Bio::Graphics::Glyph::heterogeneous_segments, Bio::Graphics::Glyph::line,
Bio::Graphics::Glyph::pinsertion, Bio::Graphics::Glyph::primers,
Bio::Graphics::Glyph::rndrect, Bio::Graphics::Glyph::segments,
Bio::Graphics::Glyph::ruler_arrow, Bio::Graphics::Glyph::toomany,
Bio::Graphics::Glyph::transcript, Bio::Graphics::Glyph::transcript2,
Bio::Graphics::Glyph::translation, Bio::Graphics::Glyph::triangle,
Bio::DB::GFF, Bio::SeqI, Bio::SeqFeatureI, Bio::Das, GD
AUTHOR¶
Lincoln Stein <lstein@cshl.org>
Copyright (c) 2001 Cold Spring Harbor Laboratory
This library is free software; you can redistribute it and/or modify it under
the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of
warranty.