Comparing version 0.1.0 to 0.2.0
@@ -7,2 +7,3 @@ var babar = require('../lib/babar'); | ||
color: 'green', | ||
grid: 'grey', | ||
width: 40, | ||
@@ -12,2 +13,20 @@ height: 10, | ||
})); | ||
console.log(babar([[0, 98], [1, 101], [2, 102], [3, 105], [4, 107], [5, 200], [6,0]], { | ||
color: 'green', | ||
grid: 'grey', | ||
height: 22 | ||
})); | ||
console.log(babar([ | ||
[0,0], | ||
[1, 98], | ||
[2, 100], [3, 101], [4, 102], [5, 103], [6, 105], | ||
[7, 106], [8, 107], [9, 108], | ||
[10, 200] | ||
], { | ||
color: 'green', | ||
grid: 'grey', | ||
height: 10, | ||
minY: 80, | ||
maxY: 120 | ||
})); | ||
@@ -25,2 +44,3 @@ console.log(babar([ | ||
width: 80, | ||
grid: 'blue', | ||
height: 10, | ||
@@ -27,0 +47,0 @@ color: 'yellow', |
@@ -39,3 +39,3 @@ // Generated by CoffeeScript 1.6.3 | ||
drawRowChart = function(r, bkt, bktW, c, h) { | ||
drawRowChart = function(r, bkt, bktW, c, g, h) { | ||
var v; | ||
@@ -47,3 +47,3 @@ return ((function() { | ||
v = bkt[_i]; | ||
switch (((r > v) && 1) || (((r > v - 1 || r === v) || r === h - 1) && 2) || 3) { | ||
switch (((r > v) && 1) || ((r >= v - 0.25) && 2) || ((r > v - 0.75) && 3) || 4) { | ||
case 1: | ||
@@ -53,3 +53,3 @@ if (c === 'ascii') { | ||
} else { | ||
_results.push(tc(bktW, '_'.black)); | ||
_results.push(tc(bktW, '_'[g])); | ||
} | ||
@@ -61,3 +61,3 @@ break; | ||
} else { | ||
_results.push(tc(Math.max(1, bktW - 1), '_'[c]) + (bktW > 1 ? '_'.black : '')); | ||
_results.push(tc(Math.max(1, bktW - 1), '_'[c]) + (bktW > 1 ? '_'[g] : '')); | ||
} | ||
@@ -67,5 +67,12 @@ break; | ||
if (c === 'ascii') { | ||
_results.push(tc(bktW, ' ')); | ||
} else { | ||
_results.push(tc(Math.max(1, bktW - 1), '▄'[c]) + (bktW > 1 ? '_'[g] : '')); | ||
} | ||
break; | ||
case 4: | ||
if (c === 'ascii') { | ||
_results.push(tc(bktW, 'X')); | ||
} else { | ||
_results.push(tc(Math.max(1, bktW - 1), ' '[c].inverse) + (bktW > 1 ? '_'.black : '')); | ||
_results.push(tc(Math.max(1, bktW - 1), ' '[c].inverse) + (bktW > 1 ? '_'[g] : '')); | ||
} | ||
@@ -81,7 +88,7 @@ break; | ||
drawRow = function(r, lblY, lblYW, bkt, bktW, c, h) { | ||
return "" + (drawRowLabel(r, lblY, lblYW)) + " " + (drawRowChart(r, bkt, bktW, c, h)); | ||
drawRow = function(r, lblY, lblYW, bkt, bktW, c, g, h) { | ||
return "" + (drawRowLabel(r, lblY, lblYW)) + " " + (drawRowChart(r, bkt, bktW, c, g, h)); | ||
}; | ||
drawChart = function(h, lblY, lblYW, bkt, bktW, c) { | ||
drawChart = function(h, lblY, lblYW, bkt, bktW, c, g) { | ||
var r; | ||
@@ -92,3 +99,3 @@ return ((function() { | ||
for (r = _i = _ref = h - 1; _ref <= 0 ? _i <= 0 : _i >= 0; r = _ref <= 0 ? ++_i : --_i) { | ||
_results.push(drawRow(r, lblY, lblYW, bkt, bktW, c, h)); | ||
_results.push(drawRow(r, lblY, lblYW, bkt, bktW, c, g, h)); | ||
} | ||
@@ -173,11 +180,11 @@ return _results; | ||
module.exports = function(points, options) { | ||
var bkt, bktW, caption, color, diff, diffX, diffY, height, lbl, lblXI, lblXN, lblXW, lblY, lblYW, max, maxX, maxY, min, minX, minY, numBkts, out, u, uniqueX, v, width, x, xFractions, yFractions, _i, _j, _k, _ref, _ref1, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7; | ||
var bkt, bktW, caption, color, diff, diffX, diffY, grid, height, lbl, lblXI, lblXN, lblXW, lblY, lblYW, max, maxX, maxY, min, minX, minY, numBkts, out, u, uniqueX, v, width, x, xFractions, yFractions, _i, _j, _k, _ref, _ref1, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8; | ||
if (options == null) { | ||
options = {}; | ||
} | ||
_ref3 = [options.caption, (_ref = options.color) != null ? _ref : 'cyan', (_ref1 = options.width) != null ? _ref1 : 80, (_ref2 = options.height) != null ? _ref2 : 15, options.xFractions, options.yFractions, options.minX, options.maxX, options.minY, options.maxY], caption = _ref3[0], color = _ref3[1], width = _ref3[2], height = _ref3[3], xFractions = _ref3[4], yFractions = _ref3[5], minX = _ref3[6], maxX = _ref3[7], minY = _ref3[8], maxY = _ref3[9]; | ||
_ref4 = [options.caption, (_ref = options.color) != null ? _ref : 'cyan', (_ref1 = options.grid) != null ? _ref1 : 'black', (_ref2 = options.width) != null ? _ref2 : 80, (_ref3 = options.height) != null ? _ref3 : 15, options.xFractions, options.yFractions, options.minX, options.maxX, options.minY, options.maxY], caption = _ref4[0], color = _ref4[1], grid = _ref4[2], width = _ref4[3], height = _ref4[4], xFractions = _ref4[5], yFractions = _ref4[6], minX = _ref4[7], maxX = _ref4[8], minY = _ref4[9], maxY = _ref4[10]; | ||
if (color !== 'ascii') { | ||
require('colors'); | ||
} | ||
_ref4 = pointsMinMaxUniqueX(points), minX = _ref4.minX, maxX = _ref4.maxX, minY = _ref4.minY, maxY = _ref4.maxY, uniqueX = _ref4.uniqueX; | ||
_ref5 = pointsMinMaxUniqueX(points), minX = _ref5.minX, maxX = _ref5.maxX, minY = _ref5.minY, maxY = _ref5.maxY, uniqueX = _ref5.uniqueX; | ||
if (options.minX) { | ||
@@ -195,3 +202,3 @@ minX = options.minX; | ||
} | ||
_ref5 = [maxX - minX, maxY - minY], diffX = _ref5[0], diffY = _ref5[1]; | ||
_ref6 = [maxX - minX, maxY - minY], diffX = _ref6[0], diffY = _ref6[1]; | ||
height -= 1 + !!caption; | ||
@@ -208,5 +215,5 @@ if (yFractions == null) { | ||
} | ||
_ref6 = bucketize(points, numBkts, minX, diffX, minY, maxY, height), bkt = _ref6.bkt, min = _ref6.min, max = _ref6.max, diff = _ref6.diff; | ||
_ref7 = bucketize(points, numBkts, minX, diffX, minY, maxY, height), bkt = _ref7.bkt, min = _ref7.min, max = _ref7.max, diff = _ref7.diff; | ||
lblY = []; | ||
for (v = _i = _ref7 = height - 1; _ref7 <= 0 ? _i <= 0 : _i >= 0; v = _ref7 <= 0 ? ++_i : --_i) { | ||
for (v = _i = _ref8 = height - 1; _ref8 <= 0 ? _i <= 0 : _i >= 0; v = _ref8 <= 0 ? ++_i : --_i) { | ||
lbl = (min + diff * v / (height - 1)).toFixed(yFractions); | ||
@@ -232,3 +239,3 @@ lblY.unshift(lbl); | ||
} | ||
out += drawChart(height, lblY, lblYW, bkt, bktW, color) + '\n'; | ||
out += drawChart(height, lblY, lblYW, bkt, bktW, color, grid) + '\n'; | ||
out += tc(lblYW, ' '); | ||
@@ -235,0 +242,0 @@ for (x = _k = 0; 0 <= lblXN ? _k < lblXN : _k > lblXN; x = 0 <= lblXN ? ++_k : --_k) { |
{ | ||
"name": "babar", | ||
"version": "0.1.0", | ||
"version": "0.2.0", | ||
"description": "CLI bar charts", | ||
@@ -5,0 +5,0 @@ "main": "lib/babar.js", |
Sorry, the diff of this file is not supported yet
30514
276