I finally got some time to employ the adw-charting library in my intranet app, and the increase in data sets revealed a lot of bugs. Tonight I finally put together a release.
- Pie chart slices are made much more intelligently, resolving some bad rendering with some datasets.
- x-axis label locations are decided in a much more sane manner, and was reworked sans scotch.
- if the x-axis label intervals are not sane, then you can specify what the interval should be with the new set-axis keyword argument, :data-interval.
- the docs are updated to mention :data-interval and show an example usage.
- Fixed a bug reported by Stuart Mackey with minimum x-values above 0.
So now I’m getting into several new territories:
- running an open source project
- coding lisp for performance
The first is pretty fun, really, everyone I’ve interacted with has been very helpful and reasonable. There’s been a flurry of activity around lisp charting libraries, so I feel some sense of competition, but the big difference is I can incorporate someone else’s code to make my library better, which is pretty cool. I’ve heard claims that open source is a way applying the scientific method to software, and (given the right licenses) that’s not too far off. My next goal is to cannibalize cl-pdf‘s charting. They have some niceness there that I might be able to toss in front of vecto and get a lot of nice features pretty quickly.
The second is a quite a bit more daunting. Currently I cons an absurd amount to generate the example graphs (around 70MB for one graph), and I’d like to get that down a bit. I’m going to setup some benchmarks and track some data on time spent and bytes consed, so I can tell if what I change is helpful. I’ve been reading up on vectors and arrays, and will try to use those instead of lists where it seems easy. The other thing I was thinking of was putting in some type declarations as a sacrifice to the compiler gods.