Bio::Graphics::Wiggle::Loader

- SYNOPSIS
- USAGE

- METHODS
- EXTENSIONS

- SEE ALSO
- AUTHOR

# SYNOPSIS

      my $loader = Bio::Graphics::Wiggle::Loader->new('/base/directory/for/wigfiles','wibfilename');
      my $fh = IO::File->new('uploaded_file.txt');
      $loader->load($fh);

      my $gff3_file   = $loader->featurefile('gff3',$method,$source);
      my $featurefile = $loader->featurefile('featurefile');

# USAGE

This module loads Bio::Graphics::Wiggle files from source files that use Jim Kent's "WIG" format:

http://genome.ucsc.edu/google/goldenPath/help/wiggle.html

Several data sets can be grouped together in a single WIG source file. The `load()` method accepts the path to a WIG source file, and will create one or more .wib ("wiggle binary") databases of quantitative data in the directory indicated when you created the loader. Call the `featurefile()` method to return a text file in either GFF3 or Bio::Graphics::FeatureFile format, suitable for loading into a gbrowse database.

## METHODS

$loader = Bio::Graphics::Wiggle::Loader->new('/base/directory' [,'my_data'])

  Create a new loader. The first argument specifies the base directory in which the loaded .wib files will be created. The second argument specifies the base name for the created .wib files, or "track" if not specified.

$loader->`load($fh)`

  Load the data from a source WIG file opened on a filehandle.

$data = $loader->featurefile($type [,$method,$source])

  Return the data corresponding to a GFF3 or Bio::Graphics::FeatureFile. The returned file will have one feature per WIG track, and a properly formatted "wigfile" attribute that directs Bio::Graphics to the location of the quantitative data.

  $type is one of "gff3" or "featurefile". In the case of "gff3", you may specify an optional method and source for use in describing each feature. In the case of "featurefile", the returned file will contain GBrowse stanzas that describe a reasonable starting format to display the data.

$loader->`allow_sampling(1)`

  If `allow_sampling()` is passed a true value, then very large files (more than 5 MB) will undergo a sampling procedure to find their minimum and maximum values and standard deviation. Otherwise, file will be read in its entirety to generate those statistics.

## EXTENSIONS

Several extensions to the WIG format "track" declaration are recognized.

transform=<transform>

  Specify a transform to be performed on all numeric data within this track prior to loading into the binary wig file. Currently, the following three declarations are recognized:

       transform=logtransform y' = 0          for  y == 0
                              y' = log(y)     for  y >  0
                              y' = -log(-y)   for  y <  0

       transform=logsquared  y' = log(y**2) for y != 0
                             y' = 0         for y == 0

       transform=none        y' = y   (no transform - the default)

trim=<trim>

  Specify a trimming function to be performed on the data prior to scaling. Currently, the following trim functions are recognized:

       trim=stdev1           trim to plus/minus 1 standard deviation of the mean
       trim=stdev2           trim to plus/minus 2 standard deviations of the mean (default)
       trim=stdevN           trim to plus/minus N standard deviations of the mean
       trim=none             no trimming

Example entended track declaration:

     track type=wiggle_0 name="example" description="20 degrees, 2 hr"  \
           trim=stdev2 transform=logsquared

# SEE ALSO

the Bio::Graphics::Wiggle manpage, the Bio::Graphics::Glyph::wiggle_xyplot manpage, the Bio::Graphics::Glyph::wiggle_density manpage, the Bio::Graphics::Panel manpage, the Bio::Graphics::Glyph manpage, the Bio::Graphics::Feature manpage, the Bio::Graphics::FeatureFile manpage

# AUTHOR

Lincoln Stein <lstein@cshl.org>.

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

Bio::Graphics::Wiggle::Loader