ddebin / mc-google-visualization
Google Visualization datasource with your own database
Installs: 2 573
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: ^7.1 || ^8.0
- ext-json: *
- ext-pdo: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpstan/phpstan: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpstan/phpstan-strict-rules: ^1.0
- phpunit/phpunit: ^7.0 || ^8.0 || ^9.0
README
MC_Google_Visualization: Google Visualization datasource with your own database
MC_Google_Visualization provides simple support for integrating Google Visualization charts and graphs with your own internal database. It includes a complete parser for the Google Visualization Query Language, giving you the same ease of pivoting and formatting data from your database as is currently possible with Google Spreadsheets.
It's a fork of https://code.google.com/p/mc-goog-visualization/.
Installing
Install via Composer:
composer require ddebin/mc-google-visualization
Examples
Some examples can be found in the examples/
directory. Browse to examples/
to see the list. For these examples, PDO with SQLite3 support is required.
cd examples/
php -S localhost:8000
And then browse to http://localhost:8000/.
You must allow Flash content in local (cf. Note for Developers).
Differences Between MC_Google_Visualization and Reference Query Language
MC_Google_Visualization tries to be exactly compatible with the query language defined by Google, but writing this in PHP makes some choices easier than others.
Here's where there are still known incompatibilities between our implementations:
Format Strings
The Google Visualization Query Language defines their formats as patterns supported by ICU.
Since PHP has no built-in support for these patterns, we instead use the default patterns provided by PHP. For "date", "timeofday", and
"datetime" fields, we use PHP date()
formatting strings.
For number fields, we use a custom set of patterns that match the most common formatting styles. A format string of "num:x" runs the number
through number_format
and shows x
decimal places. The special format string "dollars" will prepend the string with a dollar sign and format
the number to two decimal places. The format string "percent" will multiply the number by 100, format it to one decimal place, and append a percent sign.
Anything else will be treated as a sprintf()
format string.