Provided by: libbio-graphics-perl_2.40-2_all bug

NAME

       Bio::Graphics::Glyph::pairplot - The "pairwise plot" glyph

SYNOPSIS

        use Bio::Graphics;

        # create the panel, etc.  See Bio::Graphics::Panel
        # for the synopsis

        # Create one big feature using the PairFeature
        # glyph (see end of synopsis for an implementation)
        my $block = PairFeature->new(-start=>  2001,
                                     -end  => 10000);

        # It will contain a series of subfeatures.
        my $start = 2001;
        while ($start < 10000) {
          my $end = $start+120;
          $block->add_SeqFeature($bsg->new(-start=>$start,
                                           -end  =>$end
                                          ),'EXPAND');
          $start += 200;
        }

        $panel->add_track($block,
                          -glyph => 'pairplot',
                          -angle => 45,
                          -bgcolor => 'red',
                          -point => 1,
                         );

        print $panel->png;

        package PairFeature;
        use base 'Bio::SeqFeature::Generic';

        sub pair_score {
          my $self = shift;
          my ($sf1,$sf2) = @_;
          # simple distance function
          my $dist  = $sf2->end    - $sf1->start;
          my $total = $self->end   - $self->start;
          return sprintf('%2.2f',1-$dist/$total);
        }

DESCRIPTION

       This glyph draws a "triangle plot" similar to the ones used to show linkage disequilibrium
       between a series of genetic markers.  It is basically a dotplot drawn at a 45 degree
       angle, with each diamond-shaped region colored with an intensity proportional to an
       arbitrary scoring value relating one feature to another (typically a D' value in LD
       studies).

       This glyph requires more preparation than other glyphs.  First, you must create a subclass
       of Bio::SeqFeature::Generic (or Bio::Graphics::Feature, if you prefer) that has a
       pair_score() method.  The pair_score() method will take two features and return a numeric
       value between 0.0 and 1.0, where higher values mean more intense.

       You should then create a feature of this new type and use add_SeqFeature() to add to it
       all the genomic features that you wish to compare.

       Then add this feature to a track using the pairplot glyph.  When the glyph renders the
       feature, it will interrogate the pair_score() method for each pair of subfeatures.

   OPTIONS
       In addition to the common options, the following glyph-specific options are recognized:

         Option      Description                  Default
         ------      -----------                  -------

         -point      If true, the plot will be         0
                     drawn relative to the
                     midpoint between each adjacent
                     subfeature.  This is appropriate
                     for point-like subfeatures, such
                     as SNPs.

         -angle      Angle to draw the plot.  Values   45
                     between 1 degree and 89 degrees
                     are valid.  Higher angles give
                     a more vertical plot.

         -bgcolor    The color of the plot.            cyan

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::Graphics::Glyph::xyplot, Bio::DB::GFF, Bio::SeqI,
       Bio::SeqFeatureI, Bio::Das, GD

AUTHOR

       Lincoln Stein <lstein@cshl.edu<gt>.

       Copyright (c) 2004 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.