Ferramentas
Apache ECharts
Biblioteca JavaScript da Apache para gráficos interativos em Canvas ou SVG, com mais de 20 tipos e suporte a grandes volumes de dados em páginas web.

Projeto da Apache Software Foundation, o ECharts desenha gráficos interativos em páginas web a partir de um objeto de configuração em JavaScript. São mais de 20 tipos prontos e uma dúzia de componentes que se combinam entre si. Por baixo roda o zrender, uma biblioteca de desenho própria, e você escolhe entre renderizar em Canvas ou em SVG.
Para que serve
- Criar dashboards com gráficos interativos que se adaptam a layouts responsivos.
- Exibir séries muito grandes, já que a renderização progressiva e o carregamento em fluxo foram feitos para esse volume.
- Filtrar, agrupar ou aplicar regressão aos dados dentro do próprio dataset do gráfico.
- Tornar o gráfico mais acessível com descrições geradas automaticamente e padrões de textura que não dependem só da cor.
- Ir além do 2D com extensões oficiais como ECharts GL (3D e globo), nuvem de palavras e o componente para Vue.
Como começar
Pelo npm:
npm install echarts --saveO arquivo também sai do site oficial ou do jsDelivr. O guia de início rápido pede um div com largura e altura definidas. Em seguida, echarts.init cria a instância nesse elemento, e setOption recebe título, eixos e séries para desenhar o gráfico.
Licença e custo
Redistribuições do ECharts seguem a Apache License 2.0 do repositório: levam uma cópia da licença e os avisos do arquivo NOTICE, e os arquivos alterados precisam estar indicados. Ela ainda garante a quem usa uma licença das patentes de cada contribuidor sobre o trecho que ele enviou. Nenhum plano pago aparece no site oficial, que oferece ainda temas para baixar e um construtor de temas.
Quando vale a pena
Em painéis com muitos dados, muitos tipos de gráfico ou recursos em 3D, o ECharts cobre casos que bibliotecas menores deixam de fora, à custa de uma API extensa e de um manual de opções longo. Se a página só precisa de algumas barras e linhas, o Chart.js pede menos configuração. Toda a configuração é um objeto em JavaScript, então quem já escreve código para o navegador aproveita a biblioteca com menos esforço.