Sha256: c67863c3aa8fe4fe9132dbb58589a4f5cd490682c28c8509d245b89aa9d926a8
Contents?: true
Size: 1.94 KB
Versions: 5
Compression:
Stored size: 1.94 KB
Contents
#!/usr/bin/env ruby # # color_scheme_na.rb - A Bio::ColorScheme demo script for Nucleic Acids # sequences. # # Usage: # # % ruby color_scheme_na.rb > cs-seq-fna.html # # % cat seq.fna # >DNA_sequence # acgtgtgtcatgctagtcgatcgtactagtcgtagctagtca # % ruby color_scheme_na.rb seq.fna > colored-seq-fna.html # # # Copyright:: Copyright (C) 2005 # Mitsuteru C. Nakao <n@bioruby.org> # License:: The Ruby License # # require 'bio' # returns folded sequence with <br>. def br(i, width = 80) return "<br\n>" if i % width == 0 "" end # returns sequence html doc def display(seq, cs) html = '<p style="font-family: monospace">' postfix = '</span>' i = 0 seq.each_char do |c| color = cs[c] prefix = %Q(<span style="background:\##{color};">) html += prefix + c + postfix html += br(i += 1) end html + '</p>' end # returns scheme wise html doc def display_scheme(scheme, naseq, aaseq) html = '' cs = Bio::ColorScheme.const_get(scheme.intern) [naseq, aaseq].each do |seq| html += display(seq, cs) end return ['<div>', "<h3>#{cs}</h3>", html, '</div>'] end if fna = ARGV.shift naseq = Bio::FlatFile.open(fna) { |ff| ff.next_entry.naseq } aaseq = naseq.translate else naseq = Bio::Sequence::NA.new('acgtu' * 20).randomize aaseq = naseq.translate end title = 'Bio::ColorScheme for DNA sequences' doc = ['<html>', '<header>', '<title>', title, '</title>', '</header>', '<body>', '<h1>', title, '</h1>'] doc << ['<div>', '<h2>', 'Simple colors', '</h2>'] ['Nucleotide'].each do |scheme| doc << display_scheme(scheme, naseq, "") end doc << ['</div>'] ['Zappo', 'Taylor' ].each do |scheme| doc << display_scheme(scheme, "", aaseq) end doc << ['</div>'] doc << ['<div>', '<h2>', 'Score colors', '</h2>'] ['Buried', 'Helix', 'Hydropathy', 'Strand', 'Turn'].each do |score| doc << display_scheme(score, "", aaseq) end doc << ['</div>'] puts doc + ['</body>','</html>']
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
bio-2.0.5 | sample/color_scheme_na.rb |
bio-2.0.4 | sample/color_scheme_na.rb |
bio-2.0.3 | sample/color_scheme_na.rb |
bio-2.0.2 | sample/color_scheme_na.rb |
bio-2.0.1 | sample/color_scheme_na.rb |