The jfreechart book is well worth the expense. And it is supporting the efforts of the developers. Note that it is not subject to per-user license fees or anything, so it is an annual fee (assuming you care to update to the latest docs every year) that gives you unlimited use, including source code to all of the demo apps, which is invaluable when working with something like jfreechart.
--sam On 1/26/07, Daniel Jue <[EMAIL PROTECTED]> wrote:
I've seen the light. =) I won't jump to javascript charting just yet--although it looks nice and interaction is great, I don't have the time and it's not required. Besides, the feeling I get is that I'd probably want to upgrade to Tap 4.1.something before diving into dojo integration. It was very easy to switch over to JFreeCharts, although I wish there were more open source examples besides the pay-for user guide they offer. In fact in less than a couple hours I had abstracted my ChartService to act on a wrapper I called "IChart", which can wrap whatever charting tool I choose, as long as the chart rendering feature accepts an output stream. The IChart class has a method like this that passes render control to the charting tool it wraps: public static void writeChartAsJPEG(OutputStream out, IChart chart) throws IOException { ChartUtilities.writeChartAsJPEG(out, chart.getChart(), chart.getWidth(), chart.getHeight()); } and the ChartService calls this and only has to supply the Chart and the OutputStream. The ChartService also reads in height and width from the html (ognl parameters). Dan On 1/25/07, Peter Stavrinides <[EMAIL PROTECTED]> wrote: > We use JFreeChart, for both J2EE and Tapestry applications, and I must > say its really simple to use. getting it to work in Tapestry took me a > few days though because I didn't know the framework very well, in the > end it needed a ridiculous amount of code (4 lines or so). I used the > outputstream writer. This snippet is from my IEngineService service() > method: > > JFreeChart freeChart = chart; > WebResponse response = cycle.getInfrastructure().getResponse(); > OutputStream out = response.getOutputStream(new > ContentType("image/jpeg")); > ChartUtilities.writeChartAsPNG(out, freeChart, width, 300); > > > Thiago H de Paula Figueiredo wrote: > > On Wed, 24 Jan 2007 20:03:22 -0200, Martin Strand > > <[EMAIL PROTECTED]> wrote: > > > >> I haven't used it myself but jfreechart appears to be active: > >> http://www.jfree.org/jfreechart/ > > > > I have used JFreeChart in some projects and it is very good. It > > supports many chart types (including some you probably never heard of > > before :), it's open source, it's relatively simple to use, and it's > > very powerful. If there isn't any JFreeChart-Tapestry integration > > written yet, it's about time! :) Unfortunately, i don't have the spare > > time needed now. :( > > > > There's Cewolf, a JFreeChart taglib I already used. Maybe we could > > take some ideas from it. > > > > -- > > hasta la vista!!! > > > > |8) |8p |8) |8p |8) |8p |8) |8p |8) |8p |8) |8p |8) |8p |8) |8p |8) |8p > > > > thiago h. de paula figueiredo > > mestre em ciência da computação pelo dcc/ufmg > > ate' porque bobagem pouca e' bobagem . . . > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- > Peter Stavrinides > Albourne Partners (Cyprus) Ltd > Tel: +357 22 750652 > > If you are not an intended recipient of this e-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute it. Please visit http://www.albourne.com/email.html for important additional terms relating to this e-mail. > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]