iroki 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/README.md +4 -0
 - data/exe/newick_to_phyloxml +36 -8
 - data/lib/iroki/version.rb +1 -1
 - metadata +1 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: c3b375398b510f08d8c97c4361a2996788abd2bb
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: b109a3a6bacea94e8aaa32c9d316a1fafb1bb899
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: e92f0e993c5ffe7a1e7c767f33ff888d15ad4ef68695c14c2848c8d18c6f18fb860f3245677be5593bf24d821a786680c9de78be90734a05823301dd8d32f5b6
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: e1336a5681c508bb861dee39a7d4ddebc1137d5f3ef5bc27ca703b9cc2de143ef36e6a90c84f27f35be5230afb69cdf6b0a9d25e1b48575517f485509b73cb8c
         
     | 
    
        data/README.md
    CHANGED
    
    
    
        data/exe/newick_to_phyloxml
    CHANGED
    
    | 
         @@ -1,5 +1,10 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            #!/usr/bin/env ruby
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
      
 3 
     | 
    
         
            +
            # NOTE make sure the newick has no spaces for jsPhyloXML
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            # NOTE for Archaeopteryx, you need <name>#{boot}</name> to show
         
     | 
| 
      
 6 
     | 
    
         
            +
            # bootsraps, but for jsPhyloXML, just the confidence is needed
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
       3 
8 
     | 
    
         
             
            require "set"
         
     | 
| 
       4 
9 
     | 
    
         
             
            require "bio"
         
     | 
| 
       5 
10 
     | 
    
         | 
| 
         @@ -24,22 +29,39 @@ $xml_end = %q{</clade> 
     | 
|
| 
       24 
29 
     | 
    
         
             
            </phyloxml>
         
     | 
| 
       25 
30 
     | 
    
         
             
            }
         
     | 
| 
       26 
31 
     | 
    
         | 
| 
       27 
     | 
    
         
            -
            added_nodes = Set.new
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
32 
     | 
    
         
             
            def leaf? tree, node
         
     | 
| 
       30 
33 
     | 
    
         
             
              tree.descendents(node).count.zero?
         
     | 
| 
       31 
34 
     | 
    
         
             
            end
         
     | 
| 
       32 
35 
     | 
    
         | 
| 
       33 
     | 
    
         
            -
            def make_xml_string descendents
         
     | 
| 
      
 36 
     | 
    
         
            +
            def make_xml_string descendents, start_node
         
     | 
| 
       34 
37 
     | 
    
         
             
              while (node = descendents.shift)
         
     | 
| 
       35 
38 
     | 
    
         
             
                unless $already_added.include? node
         
     | 
| 
       36 
39 
     | 
    
         
             
                  if leaf? $tree, node
         
     | 
| 
       37 
     | 
    
         
            -
                     
     | 
| 
      
 40 
     | 
    
         
            +
                    # TODO this will raise something if no dist, rescue it
         
     | 
| 
      
 41 
     | 
    
         
            +
                    dist = $tree.distance(start_node, node)
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                    $xml_start << "<clade>
         
     | 
| 
      
 44 
     | 
    
         
            +
            <name>#{node.name}</name>
         
     | 
| 
      
 45 
     | 
    
         
            +
            <branch_length>#{dist}</branch_length>
         
     | 
| 
      
 46 
     | 
    
         
            +
            </clade>\n"
         
     | 
| 
       38 
47 
     | 
    
         
             
                    $already_added << node
         
     | 
| 
      
 48 
     | 
    
         
            +
                    $prev_node = node
         
     | 
| 
       39 
49 
     | 
    
         
             
                  else
         
     | 
| 
      
 50 
     | 
    
         
            +
                    boot = node.bootstrap
         
     | 
| 
      
 51 
     | 
    
         
            +
                    if boot
         
     | 
| 
      
 52 
     | 
    
         
            +
                      boot_xml = %Q{<confidence type="bootstrap">#{boot}</confidence>}
         
     | 
| 
      
 53 
     | 
    
         
            +
                    else
         
     | 
| 
      
 54 
     | 
    
         
            +
                      boot_xml = ""
         
     | 
| 
      
 55 
     | 
    
         
            +
                    end
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
                    # TODO this will raise something if no dist, rescue it
         
     | 
| 
      
 58 
     | 
    
         
            +
                    dist = $tree.distance(start_node, node)
         
     | 
| 
      
 59 
     | 
    
         
            +
                    $xml_start << "<clade>
         
     | 
| 
      
 60 
     | 
    
         
            +
            <branch_length>#{dist}</branch_length>
         
     | 
| 
      
 61 
     | 
    
         
            +
            #{boot_xml}"
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
       40 
63 
     | 
    
         
             
                    STDERR.puts "LOG -- recurse"
         
     | 
| 
       41 
     | 
    
         
            -
                    $ 
     | 
| 
       42 
     | 
    
         
            -
                    make_xml_string $tree.descendents(node)
         
     | 
| 
      
 64 
     | 
    
         
            +
                    make_xml_string $tree.descendents(node), node
         
     | 
| 
       43 
65 
     | 
    
         
             
                    $xml_start << "</clade>\n"
         
     | 
| 
       44 
66 
     | 
    
         
             
                    $already_added << node
         
     | 
| 
       45 
67 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -49,9 +71,15 @@ end 
     | 
|
| 
       49 
71 
     | 
    
         | 
| 
       50 
72 
     | 
    
         
             
            $already_added = Set.new
         
     | 
| 
       51 
73 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
      
 74 
     | 
    
         
            +
            STDERR.puts $tree.nodes.inspect
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            start_node = $tree.root
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            $descendents = $tree.descendents(start_node)
         
     | 
| 
      
 79 
     | 
    
         
            +
             
     | 
| 
      
 80 
     | 
    
         
            +
            STDERR.puts $descendents.inspect
         
     | 
| 
       53 
81 
     | 
    
         | 
| 
       54 
     | 
    
         
            -
            make_xml_string $descendents
         
     | 
| 
      
 82 
     | 
    
         
            +
            make_xml_string $descendents, start_node
         
     | 
| 
       55 
83 
     | 
    
         | 
| 
       56 
84 
     | 
    
         
             
            puts $xml_start
         
     | 
| 
       57 
85 
     | 
    
         
             
            puts "#{$xml_end}"
         
     | 
    
        data/lib/iroki/version.rb
    CHANGED