Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Dojo Gains Charting Engine

Dojo Gains Charting Engine


Today, Greenplum and SitePen announced the contribution of the new Charting engine to the Dojo Toolkit. The Charting engine is a cross-browser way of creating very complex charts easily, that can be updated on a regular basis. From the readme:

The Dojo Charting Engine is a (fairly) complex object structure, designed to provide as much flexibility as possible in terms of chart construction. To this end, the engine details the following structure:

---------Axis (axisX)
---------Axis (axisY)

A Chart object is the main entity; it is the entire graphic. A Chart may have any number of PlotArea objects, which are the basic canvas against which data is plotted. A PlotArea may have any number of Plot objects, which is a container representing up to 2 axes and any number of series to be plotted against those axes; a Series represents a binding against two fields from a data source (initial rev, this data source is always of type dojo.collections.Store but this will probably change once is in production).

The main features:

  • A Chart can have multiple “PlotAreas” (the actual charts)
  • A PlotArea can contain multiple Plots (x/y axis + N data series)
  • Data series are bound at run-time to a dojo.collections.Store object, with flexible field bindings.
  • An Axis can have custom labeling schemes.
  • See below for plot types.
  • Each plotter can take a function at render, which will be called for every data point in that series–the node representing the point is passed, as well as the entire source object the point represents.
  • PlotAreas provide a facility for assigning colors to series (basically it has a built in HSV generator)
  • All browsers but WebKit are supported in full.
  • Rendering can be granular; right now the test only runs rendering once, but it was designed to all of constant rendering if needed.
  • A range of data points can be plotted (instead of the full data set) if so desired.
  • Trend methods are available for data analysis (but no specific plotters are built for it yet).
The test page showcases what the charting engine can do:

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • re

    by Mircea Crisan,

  • re

    by Mircea Crisan,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    This looks nice. However, I think is more simple to just have a servlet that generates images using JFreeChart. In addition a generated image can be easily saved from the browser and included in some document/report/presentation.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p