wiki:GoogleChartPlugin

Google Chart API plugin

Description

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.

defect

2 / 4

enhancement

0 / 3

Download

Download the zipped source from here.

Source

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

Installation

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

Example

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", 
         chdl="Animals|Vegetables|Minerals", 
         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:

{{{
#!GChart
  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
(more)

Author/Contributors

Author: optilude
Maintainer: Martin Aspeli
Contributors:

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

Attachments (1)

Download all attachments as: .zip