Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

ASCII sparklines for the Enterprise

branch: master
Octocat-spinner-32 Makefile bin and txt frquency modes November 17, 2011
Octocat-spinner-32 README grammar in README November 17, 2011
Octocat-spinner-32 aspark.c some help added November 17, 2011
README
ASPARK README
===

aspark is a C program to display ASCII Sparklines.
It is completely useless in 2011.

It is a bloated versions of https://github.com/holman/spark
and is intended for Enterprise Companies.

Basic usage
---

The program has different operation modes to get data in different ways. The
simplest default operation mode is getting data from the command line:

$ ./aspark 1,2,3,4,10,7,6,5
    `-_ 
__-`   `

By default the program prints graphs using two rows. For better resolution you
can change this using the --rows option:

$ ./aspark 1,2,3,4,5,6,7,8,9,10,10,8,5,3,1 --rows 4
       _-``_   
     _`        
   -`       `  
_-`          `_

Sometimes graphs are more readable if the area under the curve is filled,
so a --fill option is provided:

$ ./aspark 1,2,3,4,5,6,7,8,9,10,10,8,5,3,1 --rows 4 --fill
       _o##_   
     _#|||||   
   o#|||||||#  
_o#||||||||||#_

It is possible to use labels, specifying them using a ':' character followed
by the label in the list of comma separated values, like in the following
example:

$ ./aspark '1,2,3,4,5:peak,4,3,1,0:base'
  _-`-_  
-`     -_
         
    p   b
    e   a
    a   s
    k   e

Sometimes a logarithmic scale is to be preferred since difference betwen values
can be too big:

$ ./aspark 1,2,3,10,50,100
     `
____` 

$ ./aspark 1,2,3,10,50,100 --log
    -`
__-`  

Stream mode
---

In stream mode data is read form standard input, one value per each line:

$ echo -e "1\n2\n3\n" | ./aspark --stream
 _`
_  

In this mode it is still possible to use labels, using a space and the label
after the actual value, like in the following example:

$ echo -e "1\n2 foo\n3\n" | ./aspark --stream
 _`
_  
   
 f 
 o 
 o 

In stream mode it is often interesting to pipe data form other programs:

$ ruby -e '(1..40).each{|x| print Math.sin(x/2),"\n"}' | ./aspark --stream --rows 4 --fill
 ####        __##          ##__        #
 ||||__      ||||##      ##||||      __|
#||||||    oo||||||      ||||||oo    |||
|||||||oo__||||||||##__##||||||||__oo|||

Characters frequency mode
---

The last mode is enabled usign --txtfreq or --binfreq options. It is used to
create a frequency table of the data received from standard input:

$ cat /etc/passwd | ./aspark --txtfreq --fill --rows 4
              o          #          #            _        
              |          |      #   |            |#_      
              |          |      |_  |   #  __#o_ |||__    
_________#____|__#_______|______||##|#o_|__|||||_|||||__#_
                                                          
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ

You can see the frequency of every single byte using --binfreq.

Check aspark --help for more information about the usage.

Author
---

aspark was developed by Salvatore Sanfilippo <antirez@gmail.com> during a few
hours of complete relax. Since it is completely useless it will not be further
developed by the author.
Something went wrong with that request. Please try again.