Google Chart Tools e Postgres

0 respostas
V

Fiz um teste com a API de grafico do google, mas nao me mostra o grafico..
NAO imagino onde estou errando.

Tenho somente um arquivo PHP:

<?php
// Consultar dados
$dados = array();

$pdo = new PDO('pgsql:host=localhost;dbname=M1', 'uapv22', '1234'); 

$sql = 'select relname, count(relname) as total from pg_stat_all_tables where n_tup_upd <> 0 group by relname';

$stmt = $pdo->query($sql);

while ($obj = $stmt->fetchAll()) {
    $dados[$obj->relname] = $obj->total;
}

echo gerar_grafico_torta($dados, 'Tabelas Atualizadas');
exit(0);

/**
 * Imprime um grafico de torta
 * @param array[string => int] $dados: Dados do Grafico
 * @param string $titulo: Titulo do grafico
 * @param int $largura: Largura do grafico
 * @param int $altura: Altura do grafico
 * @return string Tag IMG com o caminho para o grafico
 */
function gerar_grafico_torta($dados, $titulo, $largura = 250, $altura = 100) {

    // Gerando a URL dinamicamente
    $labels = array_keys($dados);
    $valores = array_values($dados);

    // Converter valores para porcentagens
    $soma = array_sum($valores)+1;
    $percentual = array();
    foreach ($valores as $valor) {
        $percentual[] = round(($valor * 100) / $soma);
    }

    $grafico = array(
        'cht'  => 'p3',
        'chs'  => $largura.'x'.$altura,
        'chd'  => 't:'.implode(',', $percentual),
        'chl'  => implode('|', $labels)
    );
    $url = 'https://chart.googleapis.com/chart?'.http_build_query($grafico, '', '&');

    // Imprimindo o gráfico
    return sprintf('<img src="%s" width="%d" height="%d" alt="%s" />',
        $url, $largura, $altura, htmlentities($titulo, ENT_COMPAT, 'UTF-8')
    );
}

Alguém pode me ajudar?
Obrigada,

Criado 23 de maio de 2013
Respostas 0
Participantes 1