Com os dados sobre o Coronavírus, muita gente precisou criar mais gráficos para acompanhar a evolução da epidemia, e manter os gráficos atualizados se tornou uma dificuldade à parte. Testei muitas fontes e programas para criar um monte de gráficos automatizados neste período até chegar em soluções sustentáveis, e posso indicar 3 ferramentas online gratuitas para criar gráficos que se alimentam de dados dinâmicos: Google Sheets, Datawrapper e Tableau Public. Em todas elas você pode usar o Google Docs como fonte dos dados ou um CSV externo.
1. Google Docs (sheets)
https://docs.google.com/spreadsheets/u/0/Prós:
- Atualização rápida (em torno de 5 min, se não for imediata)
- Gráficos no mesmo lugar onde estão os dados (pode ser uma vantagem para manuntenção)
- Leves (carregamento rápido quando embedado)
Contras:
- Gráficos são mais simples
- Gráficos não são responsivos (se você quiser atender diferentes tamanhos de tela, tem que duplicar e ajustar o tamanho do gráfico)
- Mapas muito básicos (não dá pra usar só o Brasil, por exemplo, só a América do Sul inteira) e um pouco lentos para carregar
- A fonte tem que ser o próprio google Sheets (você pode até usar uma fonte externa, mas importando para o Google Docs, com funções como IMPORTXML, IMPORTCSV ou mesmo IMPORTHTML, para elementos table)
Frequência de Atualização:
Imediata (ou geralmente em até 5 minutos)Como fazer um gráfico dinâmico no Google Sheets
- Insira seus dados em uma tabela do Sheets
- Selecione os dados
- Vá no menu "Inserir gráfico"
- O gráfico já aparece na tela, com sugestão de formato de acordo com seus dados. Faça todos os ajustes no editor de gráfico, na barra lateral.
- Publique. No botão de opções (três pontinhos) no canto do gráfico, há uma opção Publicar. No popup, escolha Incorporar, e copie o código de embed
2. Datawrapper
https://www.datawrapper.de/Prós:
- Aceita tabelas do Google Docs (existe o modo importação, que deixa os dados estáticos, e o modo "Link external dataset", o mesmo caminho para CSVs externos, que é a opção que mantém seus dados atualizados)
- Aceita CSVs externos, salvos em algum servidor web
- Gráficos muito versáteis, de diversos tipos
- Bonito, visual interessante
- Responsivo (adapta muito bem em tamanhos diferentes, tem até ajustes específicos mobile/desktop)
Contras:
- Não é totalmente personalizável.
- A interatividade é simples (tooltips). Mas não dá para fazer filtros ou seleções
- O crédito precisa aparecer na versão grátis
Frequência de Atualização:
A cada minuto no primeiro dia após a publicação. Depois de 24h, é atualizado de hora em hora (para resetar a contagem, basta abrir o gráfico para republicar).Para forçar a atualização, precisa abrir o gráfico, e ir na aba "Check & Describe" para puxar os dados novos (não precisa republicar o gráfico)
Como fazer um gráfico dinâmico no Datawrapper
- Crie um novo gráfico (New Chart, New Map ou New table)
- Na tela de Upload Data, escolha "Link external dataset" (a opção "Import Google Spreadsheet" não vai manter seu gráfico atualizado, ela só importa os dados uma vez)
- Cole o link de um CSV externo. No caso de uma tabela do Google, ative o compartilhamento da planilha antes (Compartilhar > Copiar link > Mudar para qualquer pessoa com link. Depois disso, pode copiar até o link pela barra de endereços)
- Siga as etapas para criar o gráfico
- Finalize em "Publish & Embed" para copiar o código
Exemplo de gráfico automático com Datawrapper:
3. Tableau
https://public.tableau.com/Prós:
- Gráficos mais complexos e dashboards
- Possível criar filtros e permitir maior interatividade com os gráficos
- Possível criar cálculos, agrupamentos e transformações com os dados
Contras:
- Pesado (carregamento mais lento)
- Curva de aprendizado maior
- Não é online (tem para windows e mac)
Frequência de Atualização:
1 vez por dia. Para forçar a atualização, precisa estar logado na conta do Tableau Public e clicar em "Solicitar atualização", no rodapé do gráfico, que fica no seu perfil.Como fazer um gráfico dinâmico no Tableau Public
- Connect to Data > Google Sheets
- Dê as permissões no navegador
- Escolha a planilha da sua conta
- Crie a visualização
- Save to Tableau Public...
- Deixe marcada a opção "Manter meus dados sincronizados..." ("Keep my data in sync with Google Sheets and embed my Google credentials")
Exemplo de gráfico automático com Tableau
Mapa e evolução do coronavírus por cidades no Brasil4. Flourish (menção honrosa)
O Flourish é uma ferramenta sensacional. Possui interatividades e animações (o modelo da famosa bar chart race), vários tipos de gráficos interessantes, e é versátil nas aplicações, como a possibilidade de criar "histórias", com uma sequência de gráficos, ou até mesmo embedar um gráfico dentro do outro.
Mas o Flourish não tem, até o momento, um método simples de conexão com uma fonte de dados dinâmica. Há apenas a opção de inserir dados via Copiar e Colar, ou upload de arquivos Excel, CSV, TSV, Json e Geojson. Quando lançaram o modelo de Growth Comparison, para comparação do crescimento da Covid-19 entre países, vi que eles possuem API. Para quem vai construir o gráfico via API, é possível usar dados dinâmicos via Json, por exemplo, mas aí depende de saber programar, diferente das outras soluções.