GullFOSS
OpenOffice.org Engineering at Sun
 
 
 
 
More Flickr photos tagged with openoffice

Today's Page Hits: 1917

Locations of visitors to this page
« Update: DirectX-base... | Main | Migrating OpenOffice... »
Thursday, 09 Aug 2007
Some more nice things about the new Chart for OOo 2.3
Bjoern Milcke

As you might know by now, in OpenOffice.org 2.3 there will be a new chart module. Although its main focus was the replacement of an unmaintainable previous implementation, there are still a lot of new features (Thanks a lot to Tony Galmiche, who added some nice pictures to the otherwise less impressive looking list).

The first thing I want to show here is the "right-angled-axis" Feature. This means you get a 90 degrees angle between  the x-axis and the y-axis in the 2d projection plane. Sounds complicated, but is quite easy to understand, especially with a picture.

Right Angled Axis Feature

So, what this feature does, is it combines the accuray of 2d charts and the niceness of 3d charts. You are still able to read and compare the values nicely, but also have this impressions of some more real columns. What you also see here is the "simple" 3d look, where the shading is done flat, i.e. every plane gets one shade and not a gradient. The more "realistic" look might look cooler, but again, when it comes to readability, the simple look might be the better choice.

This chart is almost default. In the Wizard I clicked on 3d on the chart type page. And I changed the colors, because green bananas don't taste so good, as well as red kiwis. But the colors are all taken from the new twelve-color palette for charts.

The other cool thing we have now, thanks to Regina Henschel, are spline-curves that do not require sorted x-values. For a demonstration here are some funny curves I calculated with some nice formulas in Calc.

Spline Curves

 

 Spline Curves

 On the left side you see B-splines, on the right side you have cubic splines. Nice aren't they? If you ask yourself why the charts are rendered so nicely, I must admit that I cheated a little here. PDF export, cropping and conversion to PNG with Apple's Preview, scaled down with Photoshop Elements. I hope we have a rendering engine that renders such pretty pictures directly some day.

 P.S.: You can find the document with which I created these charts here.

 

tags:

Posted by Bjoern Milcke on 09 Aug 2007  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[10]

Comments

Ralph Aichinger said:

The bar graph thing is great, but I think it still has one problem: It should be a truely axonometric projection,
i.e. the slanted lines for the "depth" of the graph should not converge in this type of picture, but be parallel. It looks a bit skewed that way. Photographers go to great lengths to make lines in rectangular objects parallel, I think it should be easier on the computer ; )

BTW I love the new default colours.

/ralph

Posted by Ralph Aichinger on August 09, 2007 at 09:53 AM CEST #

Bjoern Milcke said:

The good news is that there is a switch. With "Format/3D View..." you get a dialog where you have a check-box "Perspective". Just un-check it and you get what you want.

If there are more people who think it is better to have no perspective as default, we might consider changing that in future versions.

Thanks for your feedback
-Bjoern

Posted by Bjoern Milcke on August 09, 2007 at 11:37 AM CEST #

Brian Utterback said:

As a general rule, you should pick the type of graph to match the type of
the data. In this case, the data is two dimensional, but you chose a 3d
graph type. This makes a cooler looking graph to be sure, but it
always reduces the readability.

Posted by Brian Utterback on August 09, 2007 at 04:40 PM CEST #

Sven said:

Hey Bjoern,

I follow the development of chart2 with a lot of interrest because this release will definitely solve many problems during my daily work (real work). The progress is great, though I must admit that developer build check was one month ago. There was something that really surprised me. Stability. It's a total rewrite but still it seems very solid. How many people are working on this module?
Another questions. To what extend does the new chart module ease development for other developers? I mean is there something like a plug-in structure or can something be done via extensions or ...? Does your work relate in any kind to the "integration" of the R-language in OOo?

Posted by Sven on August 09, 2007 at 06:20 PM CEST #

Bjoern Milcke said:

Hi Sven,

there are two developers, both with Sun Microsystems, at the chart. That's Ingrid and me. We got a lot of help from the community but not very much concerning code. The spline stuff is one thing we got.

Well, we work quite a while on the new chart, but the stability was always very good. I think one of the main reasons is to use no plain pointers, only ref-counted ones that are checked before usage.

Extending the chart by new chart types is much easier now than in the old code (where it was virtually impossible), but we don't have an extension API yet. This was mainly a matter of priorities. The model of the chart is completely UNO-based, the controller consists of as much UNO as possible, and the view does not offer a UNO interface yet (well maybe one if I recall correctly). This would be necessary for creating a new component-based chart type, as the view classes are the ones needed for rendering (creating draw objects). We intend to offer such an API some day.

The idea of integrating R hasn't been much of an issue for us so far, and I am still not sure how much sense it would make to have connect R with OOo Chart, and also how. You can use R internally to help calculating mathematical functions for a chart, that might be a good thing. Plugging the graphical output of R into OOo might make sense but, to me, sounds like an unrelated issue for the chart module, as this would be a different type of embedded object with its own UI (do you have interactivity in R charts?) and its own model. And offering the R language to the user seems a bit out of scope for an Office productivity suite. Well, maybe as an extension.

If anybody comes up with a good idea (or even implementation) how to benefit from R in OOo, go ahead!

Posted by Bjoern Milcke on August 09, 2007 at 11:14 PM CEST #

Sven said:

Thanks for your comments. I totally agree with you regarding to R issue. Moreover R offers methods which 99,9% of office users never will need besides the fact that many thinks can be done in OOo/Calc allready right now. I expect many more thinks to come in future. For example boxplots and such things are certainly on the dev's-list (but not really "urgent" IMHO). However, there are R-GUIs and plain R would be sufficient in my opinion too. But I guess within the next years the will be some kind of implementation ( http://blogs.sun.com/GullFOSS/entry/10_projects_starting ).

"interactivity in R charts". There definitely is.

Posted by Sven on August 10, 2007 at 10:58 AM CEST #

sven said:

i was thinking two days about whether i should comment or not. but eventually did. developers, please check the perspective of graph bars and background lines. this is totally different without any reasonable explanation. how can anyone thing this is good design? (and i hope antialiasing is coming when we see cairo on ooo?)

Posted by sven on August 10, 2007 at 05:38 PM CEST #

Bob Harvey said:

What you say about rendering is very interesting - the lack of anti-aliased curves in draw and impress has been a bit of a chestnut on the self-help forums for some years. It really is long overdue!

Posted by Bob Harvey on August 12, 2007 at 09:14 AM CEST #

BCC said:

My comment on the new charting component, which I haven't tried yet (just found the post about the snapshot): Please tell me labeling of points on scatter charts hasn't changed! That's the first thing I noticed that was demonstrably superior to Excel, where labeling points (with the name of each point) is poorly supported.

As for the R issue: Integrating R into OO.o would be a good thing. Currently, I do most of my work in Excel (sorry), switching to R when the statistics aspects get serious. But even though it's fairly straightforward to access an Excel worksheet from R (thanks to the xlsReadWrite package), it still takes more time and effort than I'd like.

I don't know yet how R and OO.o should cooperate (I've just started to think about it), and it probably should not be a core functionality, but I'd be very interested in helping to build an extension that bridged the two somehow. Having this capability on OO.o (and not Excel) would help me spread OO.o adoption at my place of work- it'd be a really useful differentiator. We bump into the limits of Excel all the time. I'm not skilled enough nor available enough to build such an extension, but I could help with design, testing, debug.

Posted by BCC on August 30, 2007 at 05:18 PM CEST #

BCC said:

Of course, I posted before I googled and found this: http://wiki.services.openoffice.org/wiki/R_and_Calc

Looks like I better get involved.

Posted by BCC on August 30, 2007 at 05:20 PM CEST #

Post a Comment:
Comments are closed for this entry.
« Update: DirectX-base... | Main | Migrating OpenOffice... » GullFOSS