| Type: | Package | 
| Title: | Render an ASCII Ruler | 
| Version: | 0.2 | 
| Date: | 2018-01-29 | 
| Author: | Jeremy Leipzig <leipzig@gmail.com> | 
| Maintainer: | Jeremy Leipzig <leipzig@gmail.com> | 
| 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. | 
| License: | GPL-3 | file LICENSE | 
| Depends: | R (≥ 2.14) | 
| Imports: | stringr | 
| Collate: | 'asciiruler.R' | 
| RoxygenNote: | 6.0.1 | 
| Suggests: | testthat | 
| NeedsCompilation: | no | 
| Packaged: | 2018-01-30 15:15:42 UTC; leipzig | 
| Repository: | CRAN | 
| Date/Publication: | 2018-01-30 16:53:24 UTC | 
Generate an ascii ruler
Description
'
' v borders ' +-----------------------------------------------------------------+<-borders ' |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||<-dense_ticks ' | | | | | | | | | | | | | | |<-sparse_ticks ' |-30 -20 -10 0 10 20 30 | ' +-----------------------------------------------------------------+<-borders '
Usage
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)
Arguments
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  | 
Value
asciiruler object with the following slots:
- output
 delimited ruler string ready to cat
- content
 vector of lines comprising the ruler
- width
 width of ruler
- leftmargin
 position of the first tick relative to the left edge of the ruler
References
Inspired by http://codegolf.stackexchange.com/questions/4910/ascii-ruler-generation
Examples
asciiruler(low=-30,high=30,borders=TRUE)
Generate a GenBank sequence block
Description
'
' 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 '
Usage
genbank_seqblock(string, start = 1L, end = 0L, blocksize = 10L,
  width = 60L, sep = " ", line_break = "\n", ruler = TRUE, ...)
Arguments
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  | 
Value
delimited GenBank block string ready to cat
Examples
my_sequence<-'GATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGG
GTATGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTC
CTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACATACTTACTAAAGTGTGTTA
ATTAATTAATGCTTGTAGGACATAATAATAACAATTGAATGTCTGCACAGCCACTTTCCACACAGACATC'
my_seqblock<-genbank_seqblock(my_sequence)
cat(my_seqblock)
Print an asciiruler
Description
Print an asciiruler
Usage
## S3 method for class 'asciiruler'
print(x, ...)
Arguments
x | 
 the asciiruler  | 
... | 
 additional arguments  | 
Get the total width of an ascii ruler
Description
Get the total width of an ascii ruler
Usage
width(x, ...)
Arguments
x | 
 the asciiruler  | 
... | 
 additional arguments  |