Interactive Javascript + Canvas (jqPlot) powered graphs

Phil Longstaff plongstaff at rogers.com
Fri Mar 11 13:21:55 EST 2011


Do you have some sample plots you can attach?

 Phil
---------
I used to be a hypochondriac AND a kleptomaniac. So I took something for it.




________________________________
From: Andy Clayton <q3aiml at gmail.com>
To: gnucash-devel at gnucash.org
Sent: Fri, March 11, 2011 9:33:04 AM
Subject: Re: Interactive Javascript + Canvas (jqPlot) powered graphs

Hi all,

[I sent this once before, but that was during the mail server hiccup a month or 
so ago. Perhaps as a result it got somewhat lost in the torrent of mail. Either 
that or people aren't here just to appease me. Anyways, I thought I would send 
it one last time in case anyone wants to try it out and comment. I should have 
much more time next week to hopefully clean things up further and get it closer 
to being ready.]

I finally had some time to sit down and clean this up a little. Given that I am 
lazy I also switched from Flot to jqPlot because it supports more of what 
Gnucash needs without changes or unsupported extensions. There still is a decent 
amount of work to be done to reach parity with the gog charts, but I wanted to 
post what I have so far if anyone would like to try it out and comment. For now 
I left the old charts in for comparison. Once things are in a bit better shape 
I'll make a bug and post the latest patches.

Here is a list of at least some of the possible issues I am aware of:
* The default coloring could probably be better (plus support for when specific 
colors are specified)
* The legend needs to get out of the way of the graph
* On bar graphs as more bars get packed in there seems to be too much padding 
compared to bar width (really small bars with lots of whitespace)
* On any of the bar graphs over time the x-axis labels are (to me) misleading. A 
bar labeled 01/01/2011, for example, actually represents the value up to the 
next x position, say 01/02/2011. Perhaps labeling it with the through date (the 
inclusive end date) would make more sense, rather than the start? Then again, 
maybe that is just a matter of preference. Or maybe I will avoid the issue 
entirely by simplifying the labels to just year, or month and year, for the 
simple cases.

Anyways, feel free to give a try and let me know what could be different or 
better.

Thanks,

Andy


More information about the gnucash-devel mailing list