Title: | Render an ASCII Ruler |
---|---|
Description: | An ASCII ruler is for measuring text and is especially useful for sequence analysis. Included in this package are methods to create ASCII rulers and associated GenBank sequence blocks, multi-column text displays that make it easy for viewers to locate nucleotides by position. |
Authors: | Jeremy Leipzig <[email protected]> |
Maintainer: | Jeremy Leipzig <[email protected]> |
License: | GPL-3 | file LICENSE |
Version: | 0.2 |
Built: | 2024-10-29 03:30:28 UTC |
Source: | https://github.com/leipzig/asciiruler |
'
' v borders ' +-----------------------------------------------------------------+<-borders ' |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||<-dense_ticks ' | | | | | | | | | | | | | | |<-sparse_ticks ' |-30 -20 -10 0 10 20 30 | ' +-----------------------------------------------------------------+<-borders '
asciiruler(low = 0L, high = 50L, sparse_ticks = 5L, dense_ticks = TRUE, block_space = 0L, borders = FALSE, numbers_down = TRUE, line_break = "\n", strict_width = FALSE) default.asciiruler(x)
asciiruler(low = 0L, high = 50L, sparse_ticks = 5L, dense_ticks = TRUE, block_space = 0L, borders = FALSE, numbers_down = TRUE, line_break = "\n", strict_width = FALSE) default.asciiruler(x)
low |
the range start, can be negative |
high |
the range end, can be negative |
sparse_ticks |
intermittent ticks appear every sparse_ticks, set to 0 to hide row |
dense_ticks |
display a row of ticks at every position |
block_space |
break up the ruler with a space every block_space blocks encountered, a multiple of sparse_ticks, set to 0 to disable |
borders |
display borders |
numbers_down |
display the ruler so the numbers are below the ticks |
line_break |
the line break character(s) |
strict_width |
hide numbers whose display would force the ruler to be wider than width(high-low) |
x |
the asciiruler |
asciiruler object with the following slots:
delimited ruler string ready to cat
vector of lines comprising the ruler
width of ruler
position of the first tick relative to the left edge of the ruler
Inspired by http://codegolf.stackexchange.com/questions/4910/ascii-ruler-generation
asciiruler(low=-30,high=30,borders=TRUE)
asciiruler(low=-30,high=30,borders=TRUE)
'
' 1 6 11 16 21 26 31 36 41 46 51 56 ' | | | | | | | | | | | | ' |||||||||| |||||||||| |||||||||| |||||||||| |||||||||| |||||||||| ' 1 GATCACAGGT CTATCACCCT ATTAACCACT CACGGGAGCT CTCCATGCAT TTGGTATTTT ' 61 CGTCTGGGGG GTGTGCACGC GATAGCATTG CGAGACGCTG GAGCCGGAGC ACCCTATGTC ' 121 GCAGTATCTG TCTTTGATTC CTGCCCCATC CTATTATTTA TCGCACCTAC GTTCAATATT ' 181 ACAGGCGAAC ATACTTACTA AAGTGTGTTA ATTAATTAAT GCTTGTAGGA CATAATAATA ' 241 ACAATTGAAT GTCTGCACAG CCGCTTTCCA CACAGACATC ATAACAAAAA ATTTCCACCA ' 301 AACCCCCCCT CCCCCGCTTC TGGCCACAGC ACTTAAACAC ATCTCTGC '
genbank_seqblock(string, start = 1L, end = 0L, blocksize = 10L, width = 60L, sep = " ", line_break = "\n", ruler = TRUE, ...)
genbank_seqblock(string, start = 1L, end = 0L, blocksize = 10L, width = 60L, sep = " ", line_break = "\n", ruler = TRUE, ...)
string |
the sequence string to display |
start |
the substring start, should be 1 or greater |
end |
substring end, should be >start, negative to trim |
blocksize |
number of characters in each block |
width |
width of the sequence block |
sep |
space character between blocks |
line_break |
the line break character(s) |
ruler |
display an ascii ruler |
... |
additional arguments passed to asciiruler |
delimited GenBank block string ready to cat
my_sequence<-'GATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGG GTATGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTC CTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACATACTTACTAAAGTGTGTTA ATTAATTAATGCTTGTAGGACATAATAATAACAATTGAATGTCTGCACAGCCACTTTCCACACAGACATC' my_seqblock<-genbank_seqblock(my_sequence) cat(my_seqblock)
my_sequence<-'GATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGG GTATGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTC CTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACATACTTACTAAAGTGTGTTA ATTAATTAATGCTTGTAGGACATAATAATAACAATTGAATGTCTGCACAGCCACTTTCCACACAGACATC' my_seqblock<-genbank_seqblock(my_sequence) cat(my_seqblock)
Print an asciiruler
## S3 method for class 'asciiruler' print(x, ...)
## S3 method for class 'asciiruler' print(x, ...)
x |
the asciiruler |
... |
additional arguments |
Get the total width of an ascii ruler
width(x, ...)
width(x, ...)
x |
the asciiruler |
... |
additional arguments |