Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kga1978
    Senior Member
    • Nov 2010
    • 100

    #1

    Plotting length distribution of contigs?

    Hi all,

    I have a fasta file with contigs and I would like to plot the lengths of the sequences. I have only found prinseq-graphs that can do that, but it requires me to install a bunch of perl modules (I believe - I can't find any installation information). Is there an easier way of doing this? Preferably a simple script or java program. Here's an example of some of my data:

    Code:
    >NODE_4_length_492_cov_13.477642
    ACGGAGTATGACTTTGTATTGGTGGGTCCTTGCACTGAACCAGCCCCTCTGGTTGTGCAT
    AGGGGAGGCTTGTGGGAATGTGGAAAGAAATTGGCGTCCTTTACACCTGTTATACAAGAC
    CAGGATCTTGAAGTATTTGTGAGAGAGGTTGGGGACACTTCGTCTGACCTGCTGATTGGG
    GCATTGAGTGATATGATGATAGACAGGCTGGGGTTAAGGGTGCAGTGGTCAGGGGTGGAC
    ATTGTCTCCACACTTAGGGCTGCAGCGCCGAACTGCGAGGGGATCTTGAGTGCGGTTCTT
    GAGGCAGTGGACAACTGGGTGGAGTTCAAAGGTTATGCTCTCTGTTATAGTAAGTCAAAG
    GGGAAGGTGATGGTGCAGTCAAGTGGTGGTAAATTGAGACTGAAGGGCAGAACATGTGAG
    GAGTTGACTAGGAAGGATGAATGCATCGAAGACATTGAGTAGTCTCCTGGCGATGGTTGG
    CTCCCCCGGGGGGGCCCCCGGCGGGGGGTCCCCC
    >NODE_7_length_554_cov_17.906137
    ATTTATTTTGAGTCTTATGTGAAACCACGTGAAGGACCCCAATGTTCTTGTAGTCGCAAC
    AAATGGTCTCACATAAGACTCAAAATAAATCTGCCTCATGAAATTGTCAACAGCATCACT
    AGTGCTCACCACTCTTTCCTCCACTATGGGTTCATGTGTCCTACTGTGAGACAGCCTCAA
    TTCAGATGATAACACAATGTAATGTTCCTCTCTTTTCCATTTCACAATATGTGAGACAAG
    AGATAAGGCTTCACAGTTAACATCCAACGCAACACAGAGATCTAGGAATTTTATTCTAGG
    TGACCACTTCATTTTGGTTGACGCTAGATCACTCATGAATGGCAATATGTGCTTCTCAAA
    CACCGATGGGTACAGCCTTCTCAAAGAATGAATGATGTGATTCAAACCAACCCTATCCTC
    TAATAGTTTTGATGCAGTTGGCTTTAAAGGAAAATAGTCACAAGGGTTATGCTTGAAAAA
    ATCCAATACCTTAACTGTCTTAGGTTCCCCTAAGACCCATGCACCCAACTCTATTGCAGT
    TGATAAGGAGATGCACATATAATCCCATAACAAGGG
    >NODE_8_length_274_cov_16.138685
    CCAAAATAAGTTGTCTTCCACTTTCACTCGAGGTGCGCAGAAATTGCTATCTGAAGCTAT
    CAACAAGTCTGCATTCCAGAGCTCCATTGCATCTGGCTTTGTGGGGTTATGCAGAACATT
    GGGTAGCAAATGTGTTCGGGGACCAAATAAGGAGAATCTGTATATTAAGTCCATTCAGTC
    TCTGATTTCTGATGTCAAGGGAATCAAATTATTGACAAATTCTAATGGCATTCAGTATTG
    GCGGGTTCCGCTAGAACTTAGAGATGGGAGTGGAAGTGAAAGTGTGGTCAGTTATT
    I would like to plot the lengths similar to this:
  • maasha
    Senior Member
    • Apr 2009
    • 153

    #2
    Using Biopieces you can use plot_distribution like this:

    Code:
    read_fasta -i contigs.fna | plot_distribution -k SEQ_LEN -x
    
    
                                      Distribution
          +          +          +          +           +          +          +
      14 ++*---------+----------+----------+-----------+----------+----------+-++
          |*                                                                   |
      12 ++*                                                                   ++
          |*                                                                   |
          |*                                                                   |
      10 ++*                                                                   ++
          |*                                                                   |
       8 ++*                                                                   ++
          |** *                                                                |
       6 ++****                                                                ++
          |****                                                                |
       4 ++*******                                                             ++
          |*******                                                             |
          |***********       * *                                               |
       2 ++**********************                                              ++
          |******************************************* **  * *            *    *
       0 ++*******************************************-**--*-*----+-------*--+-*+
          +          +          +          +           +          +          +
          0        10000      20000      30000       40000      50000      60000
                                         SEQ_LEN

    It is also possible to output to X11 terminal or PNG, PDF, PS, and SVG.

    Installing Biopieces requires a working setup of Perl w. relevant modules and Ruby w. relevant gems. However, it should be worth the trouble since Biopieces is a nice toolbox IMHO.

    Comment

    • maubp
      Peter (Biopython etc)
      • Jul 2009
      • 1544

      #3
      There's a "Histogram of sequence lengths" example in the Biopython Tutorial, it uses
      Not Java, but also not Perl

      Comment

      Latest Articles

      Collapse

      • SEQadmin2
        Multiomic Liquid Biopsy: What DNA/RNA Panels Reveal That DNA Alone Can’t
        by SEQadmin2



        Tumors contain complex mixtures of cell populations that evolve in response to treatment and host-specific factors. Tissue biopsies provide only static snapshots of a tumor’s state. But what if we could follow that evolution over time using a minimally invasive technique?

        Liquid biopsies can detect tumor-derived material circulating in the bloodstream, providing a way to study treatment response, detect emerging resistance, and discover new biomarkers. Circulating
        ...
        10-14-2026, 09:55 AM
      • SEQadmin2
        New Genomics Technologies Take Aim at Long-Standing Limits
        by SEQadmin2


        Researchers using sequencing and genomics tools often have to make trade-offs. They can choose between speed or scale, short reads or long-range information, or targeted panels or a view of the whole transcriptome. New technologies that have been released this year are built to address those tough choices.

        We asked six companies the same four questions to learn about their latest products. The new technologies bring a lot to the table, including rethinking sequencing
        ...
        09-28-2026, 10:25 AM

      ad_right_rmr

      Collapse

      News

      Collapse

      Topics Statistics Last Post
      Started by SEQadmin2, 10-15-2026, 10:52 AM
      0 responses
      26 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 10-14-2026, 05:39 AM
      0 responses
      31 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 10-13-2026, 09:56 AM
      0 responses
      28 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 10-09-2026, 11:14 AM
      0 responses
      28 views
      0 reactions
      Last Post SEQadmin2  
      Working...