Repolode
vicanso

vicanso/charts-rs

Biblioteca de gráficos em Rust que renderiza 29 tipos de gráfico em SVG ou PNG/JPEG/WebP/AVIF, sem precisar de navegador.

Alternativa open source a:Apache ECharts

Estrelas
400
Forks
25
Issues abertas
1
Último commit
há 4 dias

O que é?

charts-rs é uma biblioteca de gráficos para Rust que gera gráficos em SVG e também pode exportá-los como imagens PNG, JPEG, WebP ou AVIF. Os gráficos podem ser criados com uma API tipada de Rust ou a partir de um documento JSON com as mesmas opções, seguindo o modelo do Apache ECharts. A biblioteca é voltada à renderização no servidor para relatórios, e-mails, bots e dashboards, já que não exige navegador headless nem Node.js.

A biblioteca oferece suporte a 29 tipos de gráfico, incluindo gráficos de barras, linhas, pizza, radar, candlestick, heatmap, sankey, gantt, treemap e mapas, e permite colocar vários deles em uma única tela com MultiChart. As séries podem ser empilhadas, combinadas em dois eixos y ou desenhadas com linhas suaves, áreas e barras de erro. Os eixos aceitam escalas de categoria, valor, tempo e logarítmica.

A personalização visual inclui dez temas integrados, fontes personalizadas (TTF, OTF, TTC) com suporte a CJK, legendas, tooltips e animações SVG. A exportação de imagens é habilitada por meio de flags de feature do Cargo, como png, jpeg, webp e avif.

Recursos principais

  • 01Renderiza 29 tipos de gráfico, de barras e linhas a candlesticks, sankey e mapas.
  • 02Cria gráficos com uma API tipada de Rust ou a partir de um documento JSON.
  • 03Exporta em SVG e em imagens PNG, JPEG, WebP ou AVIF por meio de flags de feature.
  • 04Oferece dez temas integrados e aceita fontes personalizadas, incluindo fontes CJK.
  • 05Combina vários gráficos em uma única tela com MultiChart.

Casos de uso

  • Gerar imagens de gráficos no servidor para relatórios agendados ou exportações em PDF.
  • Anexar gráficos a e-mails ou mensagens de bots de chat sem precisar de um navegador.
  • Renderizar gráficos de dashboard na resposta de uma API de backend em Rust.
  • Gerar gráficos a partir de configurações JSON armazenadas junto com os dados da aplicação.

Início rápido

  1. 1

    Adicione o crate ao Cargo.toml

    [dependencies] charts-rs = "2"
  2. 2

    Crie um gráfico em Rust e renderize-o em SVG

    let svg = chart.svg().unwrap();
  3. 3

    Para gerar PNG, habilite a feature png

    charts-rs = { version = "2", features = ["png"] }

Antes de usar

  • Requer Rust 1.88 ou posterior (edition 2024).

Tópicos

Perguntas frequentes

O que é charts-rs?
Biblioteca de gráficos em Rust que renderiza 29 tipos de gráfico em SVG ou PNG/JPEG/WebP/AVIF, sem precisar de navegador. charts-rs é uma biblioteca de gráficos para Rust que gera gráficos em SVG e também pode exportá-los como imagens PNG, JPEG, WebP ou AVIF. Os gráficos podem ser criados com uma API tipada de Rust ou a partir de um documento JSON com as mesmas opções, seguindo o modelo do Apache ECharts. A biblioteca é voltada à renderização no servidor para relatórios, e-mails, bots e dashboards, já que não exige navegador headless nem Node.js.
charts-rs é gratuito? Qual é a licença?
charts-rs é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
charts-rs ainda é mantido?
Manutenção ativa. O último commit de charts-rs foi em 17 de out. de 2026.
Para que posso usar charts-rs?
Gerar imagens de gráficos no servidor para relatórios agendados ou exportações em PDF. Anexar gráficos a e-mails ou mensagens de bots de chat sem precisar de um navegador. Renderizar gráficos de dashboard na resposta de uma API de backend em Rust. Gerar gráficos a partir de configurações JSON armazenadas junto com os dados da aplicação.
Como instalar charts-rs?
Adicione o crate ao Cargo.toml: [dependencies] charts-rs = "2" Crie um gráfico em Rust e renderize-o em SVG: let svg = chart.svg().unwrap(); Para gerar PNG, habilite a feature png: charts-rs = { version = "2", features = ["png"] }
Onde consigo charts-rs?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/vicanso/charts-rs

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados