Bio::Graphics::Glyph::segments - The "segments" glyph

- NAME
- SYNOPSIS
- DESCRIPTION

- METHODS
- OPTIONS
- Displaying Alignments

- BUGS
- SEE ALSO
- AUTHOR

# NAME

Bio::Graphics::Glyph::segments - The "segments" glyph

Back to Top

# SYNOPSIS

      See L<Bio::Graphics::Panel> and L<Bio::Graphics::Glyph>.

Back to Top

# 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 the Bio::Graphics::Glyph manpage 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.
                     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'

      -indel_color   The color to use for small indels.   'lightgrey'

      -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 (default lightgray).

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.

Back to Top

# BUGS

Please report them.

Back to Top

# SEE ALSO

the Bio::Graphics::Panel manpage, the Bio::Graphics::Glyph manpage, the Bio::Graphics::Glyph::arrow manpage, the Bio::Graphics::Glyph::cds manpage, the Bio::Graphics::Glyph::crossbox manpage, the Bio::Graphics::Glyph::diamond manpage, the Bio::Graphics::Glyph::dna manpage, the Bio::Graphics::Glyph::dot manpage, the Bio::Graphics::Glyph::ellipse manpage, the Bio::Graphics::Glyph::extending_arrow manpage, the Bio::Graphics::Glyph::generic manpage, the Bio::Graphics::Glyph::graded_segments manpage, the Bio::Graphics::Glyph::heterogeneous_segments manpage, the Bio::Graphics::Glyph::line manpage, the Bio::Graphics::Glyph::pinsertion manpage, the Bio::Graphics::Glyph::primers manpage, the Bio::Graphics::Glyph::rndrect manpage, the Bio::Graphics::Glyph::segments manpage, the Bio::Graphics::Glyph::ruler_arrow manpage, the Bio::Graphics::Glyph::toomany manpage, the Bio::Graphics::Glyph::transcript manpage, the Bio::Graphics::Glyph::transcript2 manpage, the Bio::Graphics::Glyph::translation manpage, the Bio::Graphics::Glyph::triangle manpage, the Bio::DB::GFF manpage, the Bio::SeqI manpage, the Bio::SeqFeatureI manpage, the Bio::Das manpage, GD

Back to Top

# 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.

Back to Top

Bio::Graphics::Glyph::segments - The "segments" glyph