I've been trying to find a reporting module that does what I need but it seems I'm going to have to write one myself. I shall be trying out the charts module for the first time too. It's in alpha still but it's worth a shot for now. I'll be displaying tables anyway so it's a bonus to have the graphs.
Wondering if there are any other modules I could use. Also I have been thinking about how to make the processing faster. Ideally I'd run the reports on cron and display the results from the cache. Not settled on a method yet though.