egorleg has asked for the wisdom of the Perl Monks concerning the following question:

Hi Monks I'm looking for a resource where I can find code for a dot-plot that incorporates a substitution matrix (e.g. Blosum) and includes a threshold and window size. I saw Dottup on Bio-perl but I'm not sure how to import it and I also would like to see the code itself to be able to incorporate it into my existing code. Any help would be greatly appreciated

Replies are listed 'Best First'.
Re: Bioinformatics help please
by graff (Chancellor) on Feb 23, 2011 at 02:33 UTC
    If you're referring to Bio::Tools::Run::PiseApplication::dottup, you would "import" that the same way you would fetch any other CPAN module. An easy, interactive way to do that is:
    perl -MCPAN -e shell cpan> install Bio::Tools::Run::PiseApplication::dottup
    If you've never done a CPAN download/install before, the CPAN shell will take you through a setup/config dialog where just about all the questions should be answered by accepting the default, and you just have to pick a few urls as places to look for downloads. (You probably need "admin" privileges to get the module installed into system library paths, but there are ways for non-admin users to install modules into a personal library path.) There's a whole section in the monastery's Tutorials wing called "Modules: How to Create, Install, and Use"

    As for looking at the source code, the CPAN web page for the module includes links for viewing the source and downloading the tar file distribution via the browser. You can do a manual installation by unpacking the tar file and following directions provided in the package. (But using the CPAN module is easier.)

Re: Bioinformatics help please
by tospo (Hermit) on Feb 23, 2011 at 09:36 UTC
    You don't need to (and definitely should not) copy and paste the code from that module into your own code. Are you familiar with BioPerl and using CPAN modules in your code in general? Otherwise the BioPerl HOWTOs would be a good place to start.
    If you need to extend the capbilitiy of the module to fit your needs then you could subclass and extend it. If you describe your use-case a bit more I'm sure we can give you some more specific help.