24 comments

[ 3.0 ms ] story [ 65.1 ms ] thread
Is this functional on windows?
Nope. It's hardcoded to work only on terminal emulators. It should be possible to provide a Windows implementation of the few commands used, though. They map fairly trivially onto the Windows console functions.

That being said, I'm now thinking about creating a PowerShell implementation of this.

For what it's worth, it won't work on my Linux Debian box either...
This is pretty nifty; I'll be tinkering with this a bit for sure! Nice work.
Now that's impressive. Piped some stats to it, and it looks amazing.
There was a tool that prints out one line graphs using utf8 characters. I can't remember what it's called off the top of my head unfortunately.
Sadly doesn't work on linux, uses some weird escape sequences that I've never seen before (\e[1;2;f instead of \e[1;2H).
Having issues on OS X also. And the shell files in examples/ won't run because they're missing a #! line. Now I'm curious what system this was tested on.
On OSX it works for me using the default terminal. But in iTerm it didn't display properly :(
Sorry if I am just being slow this morning, but how can a histogram have a negative value?
What they made is not a histogram, since it's value agnostic. It's just a way to present values, nothing like bins and such is necessary for using it.

So, in case of negatives you can just see it as a bar chart.

At the point where you're allowing negative values, 'histogram' is probably a misnomer. Allowing for negative values lets you track things like delta, jerk, and so on, which can in turn reveal interesting data which isn't immediately obvious otherwise.
It looks like this tool doesn't actually calculate a histogram of the data, but simply plots a bar plot of integral data.

So, a negative value means whatever it means in your data.

hmm, the interesting thing for me is there is apparently a c package manager. Though if this won't run on linux, I'd be worried about cpm.
My favorite part is how it will scale to the terminal size. First responsive design for terminal?
1) In main.c the vals array is statically sized at 256 entries, but entries are put into it mod terminal width, with no guarantee that the terminal is <= 256 characters wide. That will lead to a buffer overflow. 2) INT_MIN cannot be negated -- you should check for that and just use INT_MAX instead.