Google Chart API plugin


This plugin provides a simple way to chart the result of an SQL query using the Google Chart API.

Note: This plugin currently uses an eval() statement to turn parameters in Python dict syntax into an actual dictionary. This means you can pass tuples and lists to the engine. However, it is also risky, since you are allowing the author of the wiki page to execute arbitrary Python code. Until this has been replaced by a more limited parser that only accepts primitive types, do not use this plugin in an environment where you don't trust your users.

Patches to fix this would be welcome!

How about this? Use JSON. Install simplejson, then in python:

>>> args = '["hurray",{"for":"json"}]'
>>> import simplejson
>>> simplejson.loads(args)
["hurray", {"for":"json"}]

Bugs/Feature Requests

Existing bugs and feature requests for GoogleChartPlugin are here.

If you have any issues, create a new ticket.


2 / 4


0 / 3


Download the zipped source from here.


You can check out GoogleChartPlugin from here using Subversion, or browse the source with Trac.


General instructions on installing Trac plugins can be found on the TracPlugins page.


Line chart

[[GChart(query="SELECT id FROM ticket", type="line")]]

Note: the following example macros must be entered in a single line.

Pie chart

[[GChart(type="pie", chs="250x100", query="SELECT rev FROM revision")]]

Add a legend

[[GChart(chxt="y", chco="ff0000,00ff00,0000ff", chs="300x150", type="lc", 
         query="SELECT rev, (10+2*rev), (30+3*rev) FROM revision")]]

Add a fill

[[GChart( chxt="x,y", chf="c,lg,45,ffffff,0,76A4FB,0.75|bg,s,EFEFEF",
          chco="ff0000", chs="300x150", type="lc", 
          chxl="0:|1|2|3|4|5|1:||50|100", chls="4.0,3.0,0.0",
          query="SELECT id FROM ticket")]]

Equivalent to multi-line macro:

  type  = "lc",           # chart type equivalent to 'cht'
  chxt  = "x,y",
  chf   = "c,lg,45,ffffff,0,76A4FB,0.75|bg,s,EFEFEF",
  chco  = "ff0000",       # chart color: blue
  chs   = "300x150",      # chart image size
  chxl  = "0:|1|2|3|4|5|1:||50|100",
  chls  = "4.0,3.0,0.0",
  query = "SELECT id \
           FROM ticket"

See README.txt for more information.

Recent Changes

4746 by optilude on 2008-11-05 20:31:36
Refactor labels and column model to be more usable
4684 by optilude on 2008-10-31 15:49:15
Add support for labels
4654 by optilude on 2008-10-29 20:14:38
Fix up install instructions


Author: optilude
Maintainer: Martin Aspeli

Last modified 10 months ago Last modified on Dec 15, 2015, 4:49:47 AM

Attachments (1)

Download all attachments as: .zip