Skip to Content
Data visualizationChart primitives

Chart primitives

Data visualization · 02

Chart é leitura, não decoração.

Primitives padronizam ergonomia, estados e tokens para evitar que cada tela de monitoramento renderize gráficos com gramática própria. Novas necessidades devem virar RFC, não forks locais.

Primitives canônicos

PrimitiveQuando usarNão usar para
Line chartSérie temporal, tendência, comparação ao longo do tempoRankings categóricos
Bar chartCategorias discretas, top-N, volume por origemSéries temporais densas
Stacked barProporção entre categorias no mesmo totalComparação precisa entre muitos grupos
Donut3–5 fatias com leitura de composição simplesMais de 5 categorias ou valores próximos
HeatmapMatriz temporal/categórica e concentraçãoValor absoluto isolado
SparklineTendência auxiliar em card/tabelaAnálise primária

API esperada

Todo primitive deve aceitar os mesmos contratos conceituais:

PropObrigatórioComportamento
dataSimDataset normalizado pelo consumer
aria-labelSimDescreve o que o gráfico comunica
loadingNãoRenderiza estado interno de carregamento
errorNãoRenderiza estado interno de falha
emptyNãoRenderiza estado vazio legível
legendNãotop, right, bottom ou false
reducedMotionHerdadoRespeita preferência do sistema

Estados internos

EstadoRegra
LoadingSkeleton ou estrutura estática com label acessível
EmptyExplicar ausência: “sem menções no período”, não “sem dados” genérico
ErrorInformar falha e próxima ação segura
PartialMostrar dado disponível + aviso de cobertura parcial

Regras

  • Ticks numéricos usam tabular numerals.
  • Tooltip não cobre o ponto de leitura quando houver espaço.
  • Grid é pálido e auxiliar; nunca compete com dado.
  • Threshold importante usa linha/anotação, não só cor.
  • Todo chart precisa de resumo textual quando impacta decisão.
Last updated on