Programming dojox.chart (3) - Prototype

dojo

The prototype of dojox.chart is supposed to be done two weeks ago, I am far behind the schedule due to the underestimation of the design complexity. It is really a torture to take too many pieces into account into the early design. Anyway, I am going to release a very rough prototype for the community review.

First, the screenshot, dojox.chart.Column:

dojox.chart.Column
dojox.chart.Column

and dojox.chart.Bar:

dojox.chart.Bar
dojox.chart.Bar

Using dojox.chart.Chart, it is like a breeze to implement Column and Bar. I am lazy, I would like to reuse as much as possible. Some highlights:

  • No need to calculate the range of the data, the chart would take care and figure it out the resolution to maximize the resolution
  • Very flexible architecture to make it easy to implement other kinds of chart. Well, maybe the constraint is too loose, I may refactor it later for error-proof.

And we also face some challenges, for example, current layout is hard-coded, a better approach is either to use a theme which covers the color scheme as well, or some better ways to describe the position and dimension of the plotArea, legend etc. using JSON, XML or whatever.

You can check out the snapshot of the implementation, this implementation depends on dojox.gfx.