Bio::Graphics::Glyph::cds(3) The cds glyph


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


This glyph draws features that are associated with a protein coding region. At high magnifications, draws a series of boxes that are color-coded to indicate the frame in which the translation occurs. At low magnifications, draws the amino acid sequence of the resulting protein. Amino acids that are created by a splice are optionally shown in a distinctive color.


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                black
  -label        Whether to draw a label        0 (false)
  -description  Whether to draw a description  0 (false)
  -strand_arrow Whether to indicate            0 (false)
  -hilite       Highlight color                undef (no color)

In addition, the cds glyph recognizes the following glyph-specific options:

  Option      Description                      Default
  ------      -----------                      -------
  -frame0f    Color for first (+) frame        background color
  -frame1f    Color for second (+) frame       background color
  -frame2f    Color for third (+) frame        background color
  -frame0r    Color for first (-) frame        background color
  -frame1r    Color for second (-) frame       background color
  -frame2r    Color for third (-) frame        background color
  -gridcolor  Color for the "staff"            lightslategray
  -translation Number of lines of reading      3frame
               frames to show. One of
               "3frame", or "6frame".
               For 6frame, specify a height
               of at least 30 pixels.
  -sixframe   Draw a six-frame staff           0 (false; usually draws 3 frame)
              This value overrides
              -translation, which essentially
              does the same thing.
              Don't draw the reading frame 0   false
              unless it is a feature
  -sub_part   For objects with multiple        undef
              subpart types, defines which
              is the CDS part.
  -codontable   Codon table to use             1 (see Bio::Tools::CodonTable)
  -phase_style  The way phase is to be
                interpreted. One of            "012"
                "012" or "021"
  -ignore_empty_phase                          false
              Only draw features that have
              their phase defined.
  -cds_only   Only draw features of type       false

This glyph is more sensitive to the underlying data model than usual, so there are a few additional options to use to help adapt the glyph to different environments.

The -require_subparts option is suggested when rendering spliced transcripts which contain multiple CDS subparts. Otherwise, the glyph will hickup when zoomed way down onto an intron between two CDSs (a phantom reading frame will appear). For unspliced sequences, do *not* use -require_subparts.

The -phase_style controls how the value returned by the phase() or frame() methods is to be interpreted. The official interpretation is that the phase value indicates the offset into the feature at which the reading frame starts --- e.g. a phase of ``2'' means the reading frame starts after skipping two bases from the beginning of the feature. However, many GFF2 format feature files interpret this field to mean the position reading frame of the first base of the feature --- e.g. a phase of ``2'' means that the reading frame starts after skipping just one base from the beginning of the feature. Specify ``012'' to interpret the phase field in the correct way, and ``021'' to interpret the phase field in the legacy way. The default is ``012.''

Here is how the option names were chosen:

    * * *                  Base the reading frame starts on
    A B C A B C A B C...
    0 1 2                  PHASE REPRESENTED CORRECTLY
    0 2 1                  PHASE REPRESENTED IN THE LEGACY WAY

Set the -ignore_empty_phase option to true if you wish to skip subfeatures that do not have a defined phase() or frame(). This is useful if you are rendering exons that have both translated and untranslated parts, and you wish to skip the untranslated parts.

Set the -cds_only option to true if you wish to draw the glyph only for subfeatures of type 'CDS'. This is recommended.


Using the ``coding'' aggregator, this produces a nice gbrowse display.

 feature      = coding
 glyph        = cds
 frame0f      = cadetblue
 frame1f      = blue
 frame2f      = darkblue
 frame0r      = darkred
 frame1r      = red
 frame2r      = crimson
 description  = 0
 height       = 13
 label        = CDS frame
 key          = CDS
 citation     = This track shows CDS reading frames.


Please report them.


Lincoln Stein <[email protected]>

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.