The Google Visualization Library itself is a Javascript library that providesinteractive charts that work in pretty much any browser. The libraries covermost use cases including tables as well as charts, so you can have a chartand a table of the same data.

Gviz Data Table is designed primarily for use with data sources such asdatabases. Usage is supposed to be minimal: you provide a schema, that is alist of columns, and the rows of data. A column must have a name and Pythondata type. It can also have a label which will be used for display, otherwisethe name will be used.

Each row is a sequence of cells. Although columns are explicit row names arealways the first cell in a row. Like columns, cells can also have labels.Gviz Data Table will validate each cell to make sure that data conforms totype specified in the schema and will map Python types to their JSONequivalent but it does not coerce any data, i.e. if a column has type `int`and a cell's data is a string containing numerical characters only this willstill raise an exception.

Gviz Data Table handles data conversion only. You will need to add thenecessary Javascript to an web page in order for any charts or table to bedrawn. Tables, columns and cells can all have options which are justdictionaries. As there is no further definition of options no validation oftheir items occurs. Unknown items will simply be ignored.

Gviz Data Table is composed of: one container class "Table"; two dataclasses, Cell and Column and one JSON encoder. Application code shouldprobably only ever need to use Table and the encoder.

Usage-----

Tables can be initialised with a schema or these can be added imperatively.Once one row has been added to a table no more columns can be added. Once allthe rows have been added. The table can be converted into JSON using theencoder.