google_line_chart
NAME
google_line_chart(): Generate a Google Image multi-line chart URL based on an arbitrary query.TYPE
ProcedureDESCRIPTION
Given an arbitrary query, generate a Google Image Chart URL to visualize query's data.
To make for a compact URL (less than 2048 characters), data values are presented with low resolution format, which allows at most 63 distinct values on the vertical scale. This makes for non-smooth lines in some cases (See EXAMPLES below).
Even as this procedure was created (2013), Google Image Charts are deprecated, yet the service is still running and functional. The service may go down at any stage.
SYNOPSIS
google_line_chart( IN values_query TEXT, IN chart_legend TEXT ) READS SQL DATA
Input:
-
values_query: a query producing data to be visualized. Query columns are
assumed as follows:
- First column makes for "x" values. google_line_chart() will sort the results by first column ascending. The type of this column is arbitrary; it could be numerical, temporal etc.
- 2nd [, 3rd [...]] columns are "y" values. You may provide up to 8 data columns, totaling 9 columns together with the first "x" values column.
- chart_legend: comma delimited text, listing the desired legend items. There should be the same number of tokens in this parameter as there are data columns in the query. However, google_line_chart() will work with less that number or more; the result of a nonmatching number is a nonmatching legend.
EXAMPLES
Show a simple sine & log computation:
The above leads to this image: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