Tag Archives: graph

mange: The program with a delicate name

Every time I find a csv tool of some sort, I end up wishing I had more chances to work with csv files. The first program for today is a great example, even if I have to be careful how I phrase these next few sentences. This is mange:

2014-09-21-6m47421-mange-01 2014-09-21-6m47421-mange-02 2014-09-21-6m47421-mange-03

Before I am hounded by rabid animal rights activists, just let me say I didn’t pick the name. I can’t find any sort of explanation as to why “mange” is the title, unless there are non-English and non-other-languages-I-speak references. If you know, let me in on the secret.

And I’d like to know, because mange is a pretty good program. I don’t come across many csv editors — viewers, yes, and utilities, yes. Even spreadsheets for the console. But now that I think of it, not many editors. Finding mange is a lucky event.

mange works in a straightforward fashion — arrow keys to navigate cells, enter to edit them. mange will stick to an editor mode and fall cell by cell as you edit, which makes data entry much easier.

mange also has the sense enough to display and keep a header row, as you can see in the images above. And it seems to handle terminal width and four-way scrolling without too much effort.

I did see a couple of screen corruption problems, usually when editing a long field on a wide spreadsheet that was pressed up against the rightmost edge. I have a feeling there might be a small tweak to get the screen to refresh properly after editing a cell that stretches over the screen width.

mange has a couple of features I didn’t get to, just because they’re tied to the statistical package r, and the time it would take me to learn to work them together would delay this post until about Thursday. So take it on faith that mange can feed data into r, and generate plots and graphs.

Your best bet for getting started with mange is the man page, where most of the controls and the editing-command-navigation modes are explained. It won’t take long.

I’m sad to see that the last update to mange was around three years ago, which makes me wonder if the list of coming attractions in the README file is ever going to materialize. I guess that remains to be seen. :\

histo: The shape of things to come

Considering it’s been a year and a half since I started cataloguing console-based software, and it’s been more or less a two-a-day post rate, it might be a surprise to you if I say I’m actually looking forward the next 100 or so programs. It’s a bit of a surprise to me too. There are a couple of reasons for it though.

For one, thing almost everything that I have left has been added in the past year. That means it’s either something I stupidly overlooked — like head, which I use almost every day but somehow managed to miss 😕 — or it’s new enough to be under development or currently maintained.

That won’t be the case every time, but I anticipate a lot fewer duds in the next 100 programs than I had in the last 1000.

There’s another reason: Some of the stuff is genuinely cool. A lot of the past 880+ posts have circled around time-honored software — some of it as old as computers themselves. But new minds have since taken a seat at the keyboard, and Die Neuen Kinder have a way of looking at things that is different than their parents and grandparents.

Here’s an example for you: histo.


Until about a month ago, I thought for sure that the gold standard for console-based data plotting was gnuplot. It’s been around for three decades and shows no signs of dying.

But gnuplot’s console mode is sort of an afterthought. gnuplot does a lot more in the graphical arena, even if it can spit out a line graph drawn with asterisks.

histo isolates that single task and handles it with a lot more style. You can see the results above.

You’ll get the same — or at least similar — results in a virtual console; histo doesn’t limit you to an X-based environment, like spark did.

An added bonus: histo can handle streaming data too, so it’s possible to pipe active values through histo, and see a continuous diagram.

One thing I don’t like about histo: Negative values are shows as shaded blocks, rather than pulling them below the X axis. I realize that’s a small complaint, but it seems to me that for as well as histo handles resizing to a terminal and managing a stream of unpredictable data, it shouldn’t take much more effort to show a proper downward track for negative values.

But what do I know. I couldn’t build a program like it if my life depended on it. Knowing histo is around — and other clever tools like it — means I have a lot to look forward to.

spark: Itty bitty graphs for your terminal emulator

I have to make the distinction this time, that spark probably won’t work for you in a virtual console. I believe it can only do this in a terminal emulator:


Unless I’m mistaken, there’s not much chance to get that working in a virtual console, because the fonts will display as unidentified characters. I think. It will depend. (A framebuffer terminal emulator should be fine though, so long as your font supports it.)

Regardless, spark does something interesting and kind of cool, and if you’re clever you should be able to find a way to integrate that into something else.

spark probably won’t see much more development; not that the creator is lax, but rather that I don’t know how much more it could do. There are dozens of ideas for how to use spark on the github wiki, but I think spark might have reached its logical conclusion.

A well-earned round of applause in that case then. 😀

r: Might as well start at the beginning

I know enough about statistics to know that r is a good name for a statistics software package, but I also know it’s hell on searching for an application.


r is the GNU statistical software and graphics package, which stands as r-base-core in Debian, but is tricky to find in Arch/AUR. No matter, I had no trouble getting it to compile in Arch once I had installed perl-exutils-f77.

Of course, now that it’s been built, along comes the perennial question … what do I do with it? 😕 Like I said, I know a little about statistics. It’s not enough to put me at any advantage over r though.

And so again I find myself years behind the curve, much as I was with octave, mathomatic or even gnuplot. I swear it’s not for a lack of ability, just a lack of necessity that keeps me from having used or seen these things.

I showed r in a demo(), and there are others available. r can do some amazing graphs and diagrams, as the screenshots page attests.

Unfortunately, I find myself lacking the need for a statistical analysis package, even if it did take me quite a while to find it. 😐

octave: Barely scratching the surface

Sorry for the blackout over the past day. I ran into some unforeseen real-life issues that needed my precious time.

It’s probably just as well, since octave is next on my list. Out of a sense of duty I include it in this listing, even though I can see that I hardly have any business poking around with it.

I know I skipped over Matlab a few weeks ago, and I don’t have plans to revisit it; it’s just over my head, plain and simple.

All the same, I’m willing to flit past octave, which is mathematical software along the lines of Matlab.


Mostly it’s out of a sense of obligation to free software, getting the word out, blah blah blah. Even for the few random people who stop by here. 🙄

And I don’t know octave or Matlab from Adam, but to hear some others describe it, octave is mostly compatible with Matlab, and perhaps even allows a few things Matlab doesn’t.

Be that as it may, you should decide if octave will substitute for Matlab for your purposes. I relinquish all endorsement for one or the other. 😕

Oh yeah — and supposedly, the December 2013 update to octave added … wait for it … a graphical interface! Not bad for a program that claims its origins in 1988. 😯

gnuplot: I swear this is a coincidence

I had gnuplot all figured out a day or two ago, the post all written up and poised to launch. And then I get an e-mail message mentioning Adam Shore’s introduction … which is much better than what I had ready.


So my first advice with gnuplot is … go look at Adam’s site.

I have seen where gnuplot can do some amazing things with graphical access, but tty graphs are more to my liking. 😉

I found another note elsewhere on the web mentioning that gnuplot’s license terms aren’t exactly what you might expect.

Apparently the source is freely available and you can distribute patches to it, but you can’t modify and then rerelease. If I understand it correctly.

Probably that’s not too big an problem; my acid test for software freedom is usually Debian, and in this case, gnuplot is in main, so it must not be a huge issue. The name can be a little misleading though.

Now I’m going to try to come up with something more exciting than what Adam made. I feel somehow … upstaged. 😳 👿 😉