charting_routines

SYNOPSIS

Charting routines: quick, poor man's charting of one's data

  • line_chart(): Generate an ASCII multi-line chart based on an arbitrary query.
  • google_line_chart(): Generate a Google Image multi-line chart URL based on an arbitrary query.

EXAMPLES

Generate a 2 line sample chart:

mysql> call line_chart("select n, log(n), sin(n/5)+2 from numbers where n > 0 order by n limit 80", "log n, 2 + sin n/5");
+---------+----------------------------------------------------------------------------------+
| y_scale | common_schema_chart                                                              |
+---------+----------------------------------------------------------------------------------+
| 4.38    | ---------------------------------------------------------------------########### |
| 4.11    | -----------------------------------------------------################----------- |
| 3.83    | ----------------------------------------#############--------------------------- |
| 3.56    | ------------------------------##########---------------------------------------- |
| 3.29    | -----------------------#######-------------------------------------------------- |
| 3.01    | -----*****-------######-------------*****---------------------------*****------- |
| 2.74    | ---**-----**-####-----------------**-----**-----------------------**-----**----- |
| 2.46    | -**-------##**-------------------*---------**-------------------**---------*---- |
| 2.19    | *------###----*----------------**------------*-----------------*------------**-- |
| 1.92    | -----##--------*--------------*---------------**-------------**---------------*- |
| 1.64    | ----#-----------**----------**------------------*-----------*------------------* |
| 1.37    | ---#--------------**-------*---------------------**-------**-------------------- |
| 1.10    | --#-----------------*******------------------------*******---------------------- |
| 0.82    | -#------------------------------------------------------------------------------ |
| 0.55    | -------------------------------------------------------------------------------- |
| 0.27    | -------------------------------------------------------------------------------- |
| 0.00    | #------------------------------------------------------------------------------- |
|         | v::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::v |
|         | 1                                                                             80 |
|         |     # log n                                                                      |
|         |     * 2 + sin n/5                                                                |
+---------+----------------------------------------------------------------------------------+

Generate a 2 line sample chart in google image chart URL format:

mysql> call google_line_chart("select n, log(n), sin(n/5)+2 from numbers where n > 0 order by n limit 80", "log n, 2 + sin n/5") \G
*************************** 1. row ***************************
google_chart_url: http://chart.apis.google.com/chart?cht=lc&chs=800x350&chtt=SQL+chart+by+common_schema&chxt=x,y&chxr=1,0.0,4.4&chd=s:AKPTWZbdfghjklmnnopqqrssttuuvvwwxxxyyzzz0001112222333444455555666677777888888999,fhkmopqqponljhebYWTRQPOOOQRTVYbdgjlnopqqpomkifcZXUSQPOOOPQSUXacfikmopqqponljgdbY&chxs=0,505050,10,0,lt&chxl=0:|1|||||||||||||||||||20||||||||||||||||||||40||||||||||||||||||||60||||||||||||||||||||80&chg=1.265822784,25,1,2,0,0&chco=ff8c00,4682b4&chdl=log n|2 + sin n/5&chdlp=b

 
common_schema documentation