1.2.0 • Published 5 years ago
ascii-boxplot v1.2.0
ascii-boxplot
ascii, character-only horizontal boxplots
patates · • [----[==|==]----] • ·
frites · • [---[=|===]--] • ·
poutines · • [----[=|=]----] • ·
choucroutte · • [----[=|=]-----] • ·• Introduction • API • Options • License •
var boxplot = require('boxplot')
boxplot({
label1: arrayOfSamples1,
label2: arrayOfSamples2,
label3: arrayOfSamples3,
})API
boxplot(sourceData[, options])
sourceDataobject or array of samples. The object keys or array indices are used as labelsoptionsoptionsal configuration object
Options
The optional options object can override any or all of the internal defaults
var defaults = {
1: ' • ',
2: ' [=] ',
3: ' [=|=] ',
5: ' [-[=|=]-] ',
7: ' • [-[=|=]-] • ',
9: ' · • [-[=|=]-] • · ',
cols: 0, // will attempt to autodetect if cols is falsy, defaulting to 80
padding: [4, 4],
probs: [0, .02, .09, .25, .50, .75, .91, .98, 1],
ondone: function(str) { console.log(str) }
}1..9are the templates for a given quantile size. More info in the template section belowcolsthe maximum width of the screen in characterspaddingleft and right padding (after the longest label and before the right edge)probsthe probabilities to be used when calculating the sample quantiles. Can be 1,2,3,5,7 or 9 chars long.ondonethe action to do with the completed string
If the sample size is less or equal to probs.length the sample values are used as-is.
This means that precomputed quantile values can also be used
Templates
There are different templates for different number of probability points.
For example, the default probability [0, .02, .09, .25, .50, .75, .91, .98, 1]
has nine points and the display of the resulting values will use template #9.
A template string has 2n+1 characters and has the form svsvsv...
where alternating characters are used for actual values v and for spacing.
Examples:
boxplot(data, {
probs: [0.25, 0.5, 0.75],
3:`.L-M-H.`
}) // --> something like '....L----M---H....'
boxplot(data, {
probs: [0.09, 0.25, 0.5, 0.75, 0.],
3:` |-##|##-| `
}) // --> something like ' |---###|####-----| 'License
Released under the MIT License