Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Professional, "a-la-OpenOffice", 3D graphs

by bronto (Priest)
on Aug 08, 2005 at 07:56 UTC ( #481813=perlquestion: print w/replies, xml ) Need Help??
bronto has asked for the wisdom of the Perl Monks concerning the following question:

Hello monks

Is there anything different from GD::Graph3d to create 3D graphs (e.g.: histograms) in Perl? I made some tours into CPAN, but GD::Graph3d seems the only one and good way to do that. The plots are good, but I'd like tohave something fancier, like OpenOffice's 3D histograms.

Thanks in advance!


In theory, there is no difference between theory and practice. In practice, there is.
  • Comment on Professional, "a-la-OpenOffice", 3D graphs

Replies are listed 'Best First'.
Re: Professional, "a-la-OpenOffice", 3D graphs
by davorg (Chancellor) on Aug 08, 2005 at 08:17 UTC

    I like SVG::TT:Graph (and I see that there's also sometihng called SVG::Template::Graph which I should check out).

    SVG is a great way to produce professional looking graphs.


    "The first rule of Perl club is you do not talk about Perl club."
    -- Chip Salzenberg

Re: Professional, "a-la-OpenOffice", 3D graphs
by Corion (Pope) on Aug 08, 2005 at 08:03 UTC

    Some monk (ikegami? kutsu?) recently pointed me towards plplot, which produces interesting plots. A (really) long-term project of mine would be to make really scriptable instead of relying on their ugly UNO stuff.

    As documents are mostly (zipped) XML files, you could get away with one manual step by turning your diagram into a template and creating the output via Template Toolkit, then printing it/converting it to PDF from within

Re: Professional, "a-la-OpenOffice", 3D graphs
by fmerges (Chaplain) on Aug 08, 2005 at 11:08 UTC


    As stated before you can use SVG::TT::Graph but you can also take a look at Gnuplot there are also modules for Perl.


    |fire| at
Re: Professional, "a-la-OpenOffice", 3D graphs
by emazep (Priest) on Aug 08, 2005 at 18:08 UTC
    Dear bronto,

    though the above mentioned SVG::TT:Graph looks really very promising (and it already offers stunningly beautiful charts, especially in the line and pie charts sections), besides GD::Graph3d, the only others CPAN modules I'm aware of which offer the 3D histograms you asked for, are DBD::Chart and DBIx::Chart (they're both by the same author).
    Here and here you can see some charts produced with them.

    Chart is another interesting CPAN charting module, but it unfortunately does not offer the 3D histograms either.

    I've tested all of them for a project I'm developing right now (and I've also made a patch to correct a GD::Graph bug about the value labels layout with the stacked bars histograms - I'll publish it on CPAN's RT ASAP).

    The one that IMO produces the most beautiful and professionally looking charts is SVG::TT:Graph but, as already said, it does not offer 3D histograms yet.

    I've also tried the Java based JFreeChart, but for various reasons (partly aesthetical, partly functional and partly of religion) I didn't find it completely satisfactory either.

    The conclusion is that for my project, being under very tight time constraints, to have something fancier I had to resort to this commercial product I found, which fortunately offers also Perl bindings.


      I'll second the recommendation for ChartDirector. Decent API, superb documentation, and tons of examples.

      Quick story: My manager comes up to me and says "Hey, remember last month when we talked about putting graphing into the application? Is there any way we can get that in by noon today?". ChartDirector made it happen.

      It's not free, but it's pretty darn cheap (if work's paying for it) and it saved my bacon so it will forever get a recommendation from me.