Construindo tabelas HTML com “Google Visualization API”

Que tal exibir seus dados tabulados com um belo visual e ainda poder ordenar e paginar, tudo construído dinamicamente e sem escrever qualquer “Table HTML”?

Apresentação

A Google Visualization API apresenta um conjunto de técnicas para visualização dos seus dados de forma fácil e rápida. Neste Post vamos ver a Table Charts.

Funcionamento

Exemplo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
<html lang="pt-BR">
  <head>    
    <meta charset="ISO-8859-1" />
    <script type='text/javascript' src='https://www.google.com/jsapi'></script>
    <script type='text/javascript'>
      google.load('visualization', '1', {packages:['table']});
      google.setOnLoadCallback(drawTable);
      function drawTable() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'Nome');
        data.addColumn('number', 'Salário');
        data.addColumn('boolean', 'Tempo integral');
        data.addRows([
          ['João',  {v: 2000, f: 'R$ 2.000,00'}, true],
          ['Maria', {v: 5000, f: 'R$ 5.000,00'}, false],
          ['Alice', {v: 1000, f: 'R$ 1.000,00'}, true],
          ['Bob',   {v: 1500, f: 'R$ 1.500,00'}, true]
        ]);
        var table = new google.visualization.Table(document.getElementById('table_div'));
        table.draw(data, {showRowNumber: true});
      }
    </script>
  </head>
  <body>
    <div id='table_div'></div>
  </body>
</html>
?>

(1) No código acima, note que começamos fazendo uma chamada para a API JavaScript do Google (JSAPI).

(2) Em seguida, carregamos a Visualization, na versão 1.0, e sua biblioteca ‘table’.

(3) Utilizamos a função de JSAPI setOnLoadCallback atribuindo o manipulador drawTable (ou outro nome que você queira), que é quem de fato deverá criar e definir a tabela.

(4) A DataTable é convertida em uma tabela HTML em que cada coluna deve ser do mesmo tipo de dados suportados (string, boolean, número, etc).

(5) Use o addColumn() para criar uma coluna, passando como parâmetro o tipo e o nome do dado.

(6) Use addRows() para criar as linhas da tabela, ou seja, inserir seus dados propriamente dito. As linhas são delimitadas por colchetes [] e a informação de cada célula é separada por vírgula. Perceba ali uma notação “v” e “f”, que suponho que signifique value e field, respectivamente, ou seja, o valor real da célula e o rótulo a ser exibido no campo. Isto se faz necessário, pois, como o a referida coluna é de “inteiros”, então a correta ordenação poderia ficar prejudicada se fosse tida como strings.

(7) Finalmente, informamos em qual DIV o desenho da tabela será renderizado (table_div) e pronto!

Na prática

O código acima gera a seguinte Tabela HTML:

Não é mesmo interessante? Todo HTML da tabela foi criado sem que precisássemos escrever um só TABLE, TR ou TD. Claro, esta foi apenas uma demonstração. Você pode aprofundar seu conhecimento e descobrir outras possibilidades de configuração para trabalhar com as tabelas através da Table Charts.

Galeria

Existe ainda inúmeros outros recursos interessantes que o Google Charts Gallery oferece. Há uma variedade de gráficos que são otimizados para atender às necessidades de visualização de dados. Os gráficos são baseados na tecnologia HTML5/SVG puro (adotando VML para antigas versões do IE), por isso não são necessários plugins. Esses gráficos podem ser adicionados a sua página em apenas alguns passos simples.

Fontes

Total de acessos: 5263

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *