SEED · Dataviz — sub-bloco DG (gráficos core)

Preview v1.4c. Sete tipos, três estados e o modo grayscale. Todas as cores vêm da §3c do seed-tokens.md v1.4 — nenhum hex foi inventado aqui. Os SVG são estáticos: a estrutura é inspecionável sem executar JavaScript.

1 · DG1 — a anatomia obrigatória

Todo gráfico SEED é um <figure> com cinco partes. Sem as cinco, não é gráfico canônico. A quarta — o fallback textual — existe porque a auditoria pública do shadcn Charts mostrou que a biblioteca não entrega alternativa textual sozinha.

Geração por usina — junho/2026

Gráfico de barras. Cinco usinas, geração em MWh. UFV Valadares lidera com 142 MWh; UFV Aimorés é a menor, com 51 MWh. Tabela completa abaixo.

160120 80400 14211896 7451 ValadaresGovernador TeófiloCaratinga Aimorés MWh
Geração medida (MWh)
Ver dados em tabela
Geração por usina, junho de 2026, em MWh.
UsinaGeração (MWh)
UFV Valadares142
UFV Governador118
UFV Teófilo96
UFV Caratinga74
UFV Aimorés51
Total481

DG1 As cinco partes: 1 título visível (figcaption) · 2 descrição curta que identifica e diz onde está a longa · 3 fallback textual (esta tabela) · 4 legenda · 5 área do gráfico. O role="img" + aria-labelledby amarra 1 e 2 ao SVG.

2 · DG4 — eixo zero é regra dura assimétrica

Barra e área sempre do zero, porque comprimento e área codificam o valor. Linha pode truncar, porque codifica por posição e inclinação — e a SEED precisa disso: PR de usina e tensão de rede variam pouco e importam muito.

Performance Ratio — UFV Valadares

Gráfico de linha, janeiro a junho de 2026. PR sobe de 79,2% para 83,1%. Eixo vertical truncado, iniciando em 74%.

86%82% 78%74% eixo truncado — não inicia em zero JanFevMar AbrMaiJun
PR mensal (%)
Ver dados em tabela
Performance Ratio mensal, UFV Valadares, 2026.
MêsPR
Janeiro79,2%
Fevereiro80,1%
Março81,4%
Abril80,8%
Maio82,3%
Junho83,1%

DG4 Três condições para truncar: eixo rotulado, mínimo explícito e marca visual de truncamento (o duplo traço na base). Truncar sem as três é dramatizar variação.

Geração mensal acumulada — carteira MG

Gráfico de área, janeiro a junho de 2026. Geração cresce de 96 para 142 MWh. Eixo inicia em zero.

160120 80400 JanFevMar AbrMaiJun
Geração medida (MWh)
Ver dados em tabela
Geração mensal da carteira MG, 2026, em MWh.
MêsMWh
Janeiro96
Fevereiro112
Março128
Abril121
Maio138
Junho142

DG4 Curva monótona (nunca ultrapassa os valores reais — spline genérica inventaria picos) com gradiente 22%→0 sob o traço: a área comunica magnitude sem pesar.

3 · DG10 — empilhada e agrupada

Empilhada quando total e composição importam juntos. Se a pergunta é comparar um subgrupo entre períodos, a resposta é agrupada — porque só o segmento da base fica sobre a linha de zero comum.

Consumo por posto tarifário — Cliente A4

Gráfico de barras empilhadas, março a junho de 2026, em kWh. Três segmentos: fora ponta (base), reservado e ponta. Total cresce de 6.620 para 7.465 kWh.

8.0006.000 4.0002.0000 6.6207.060 6.1357.465 MarAbr MaiJun
Ponta Reservado Fora ponta (base)
Ver dados em tabela
Consumo por posto tarifário, cliente A4, em kWh.
MêsFora ponta ReservadoPonta Total
Março4.8201.2605406.620
Abril5.1401.3106107.060
Maio4.4601.1804956.135
Junho5.3901.4206557.465

DG10-c Fora ponta está na base porque é o segmento que o cliente compara mês a mês — é o único sobre a linha de zero. DG14 Sem contorno: os segmentos se separam por vão de 2px (espaço negativo na cor do cartão) — separação por geometria, que funciona contra qualquer cor, em qualquer modo. Supersede o DG11: o contorno cinza-900 era o que dava o ar de relatório antigo. DG13 Em escuro+grayscale as texturas continuam assumindo — a paleta melhora o colorido, não revoga a textura.

Consumo por posto — comparação direta

Gráfico de barras agrupadas, mesmos dados. Cada posto tarifário parte da mesma linha de zero, o que permite comparar ponta entre meses.

6.0004.000 2.0000 MarAbr MaiJun
Fora ponta Reservado Ponta
Ver dados em tabela
Consumo por posto tarifário, cliente A4, em kWh — leitura por subgrupo.
PostoMar AbrMai Jun
Fora ponta4.8205.1404.4605.390
Reservado1.2601.3101.1801.420
Ponta540610495655

DG10-a A agrupada é a saída obrigatória da empilhada, não uma alternativa de gosto. Repare que aqui o total sumiu: cada gráfico responde uma pergunta.

4 · DG5 — pizza com regras

Origem da energia consumida — junho/2026

Gráfico de pizza, cinco fatias somando 100%. UFV responde por 45%; rede fora ponta 25%; rede ponta 15%; créditos 10%; reservado 5%.

25% Rede — fora ponta 15% Rede — ponta 10% Créditos compensados 5% Reservado 45% Gerada pela UFV
Gerada pela UFV Rede — fora ponta Rede — ponta Créditos compensados Reservado
Ver dados em tabela
Origem da energia consumida em junho de 2026.
OrigemParticipação
Gerada pela UFV45,0%
Rede — fora ponta25,0%
Rede — ponta15,0%
Créditos compensados10,0%
Reservado5,0%
Total100,0%

DG5 Cinco fatias — o máximo — cobrindo as 5 famílias de matiz, adjacentes com ≥5 p.p. de diferença. Rótulo interno só onde a tinta atinge 4,5 sobre o fill; as demais saem com guia. DG14 Sem contorno: as fatias se separam por matiz, e em escuro+grayscale a textura do DG13 assume.

Quando NÃO é pizza — 7 categorias próximas

Gráfico de barras horizontais ordenado. Sete componentes de custo entre 18,4% e 9,1% — diferenças abaixo de 5 pontos percentuais.

MódulosMão de obra InversoresEstrutura CabeamentoProjeto Logística 18,4%17,0% 15,5%14,0% 12,5%10,8% 9,1%
Participação no custo (%)
Ver dados em tabela
Composição do custo de implantação, ordenada da maior para a menor.
ComponenteParticipação
Módulos18,4%
Mão de obra17,0%
Inversores15,5%
Estrutura14,0%
Cabeamento12,5%
Projeto10,8%
Logística9,1%
Total97,3%

DG5 Sete fatias, todas separadas por menos de 5 p.p.: duas travas violadas de uma vez. A barra horizontal ordenada responde a mesma pergunta e ainda cabe em 360px sem rótulo rotacionado DG8.

5 · Dispersão · e o DG2 (teclado)

Irradiância × geração específica — 16 usinas

Gráfico de dispersão. Correlação positiva entre irradiância diária (kWh/m²) e geração específica (kWh/kWp). Use as setas do teclado para percorrer os pontos.

5,04,5 4,03,5 4,55,05,5 6,06,5

Usina (16 unidades)
Ver dados em tabela
Irradiância diária e geração específica por usina.
UsinaIrradiância (kWh/m²) Geração (kWh/kWp)

DG2 Um único tab-stop para o gráfico inteiro, depois para percorrer os pontos, Home / End para os extremos. Cada movimento é anunciado em região aria-live. Limite declarado, não resolvido: em modo de navegação, JAWS e NVDA interceptam as setas antes da página — o Recharts contorna isso com role="application", e o VoiceOver não tem equivalente. Por isso o teclado aqui é enriquecimento: quem garante o acesso é a tabela do DG1.

6 · DG6 — os três estados, com forma de gráfico

Herdados do Bloco 3, mas com a moldura do gráfico. E a distinção que o DT tornou possível: “sem dado” não é estado vazio — o gráfico existe e a lacuna é hachurada.

Carregando…

Estado de espera.

Carregando o gráfico de geração por usina.

S2 O skeleton espelha a moldura real — eixos, base e cinco barras na mesma posição — e trava o layout: nada salta quando o dado chega. S3 Shimmer E→D 1,8 s, desligado em prefers-reduced-motion. S5 Aos 15 s sem resposta, vira o estado de erro ao lado.

Sem medições no período

Estado vazio, tipo zero-resultados.

Nenhuma medição no período

O filtro atual não retornou dados. Tente ampliar o intervalo de datas.

Z1 Zero-resultados não recebe CTA de criação — a ação oferecida mexe no filtro, que é a causa. Z2 Título de 4 palavras, sem ponto final; uma ação só.

Falha ao carregar

Estado de erro.

S5 É o destino do timeout de 15 s. §15 Alerta em role="alert", no lugar do gráfico — não empilhado por cima dele.

Geração por usina — com lacuna de medição

Gráfico de barras. UFV Teófilo não reportou medição em junho — a barra aparece hachurada, e isso é diferente de gerar zero.

160120 80400 142118 7451 sem medição ValadaresGovernador TeófiloCaratinga Aimorés
Geração medida (MWh) Sem medição
Ver dados em tabela
Geração por usina, junho de 2026. Célula vazia indica ausência de medição.
UsinaGeração (MWh)
UFV Valadares142
UFV Governador118
UFV Teófilo
UFV Caratinga74
UFV Aimorés51

DT chart-no-data sempre hachurado, com o item “sem medição” na legenda e o traço na tabela. A distinção “gerou pouco × não reportou” nunca depende de cor — sobrevive ao grayscale e ao impresso. Foi o achado do seu gate que criou esta regra.

7 · DG7 — rótulo direto vence legenda

Até três séries em linha ou área, o rótulo fica ao lado do traço. A legenda obriga ida-e-volta do olho — e a auditoria do shadcn mostrou que ela sequer tem relação codificada com o gráfico. Exceção declarada: a empilhada do bloco 3 usa legenda, porque com quatro segmentos o rótulo não cabe dentro da faixa.

Geração medida × esperada — UFV Valadares

Gráfico de linha com duas séries rotuladas diretamente, sem legenda. A geração medida fica acima da esperada a partir de março.

160120 80400 Medida Esperada JanFevMar AbrMaiJun
Ver dados em tabela
Geração medida e esperada, UFV Valadares, em MWh.
MêsMedida Esperada
Janeiro9688
Fevereiro11299
Março128107
Abril121115
Maio138120
Junho142123

DG7 DF3-1 As duas séries também diferem por tracejado, não só por cor: a “esperada” é pontilhada e violeta — família distinta, nunca um tom da mesma cor. Ligue o grayscale e as duas continuam distinguíveis.

8 · Formatos de aplicação — o vocabulário completo

Os formatos que aparecem em produto de verdade além dos sete tipos: número-destaque, ranking, destaque×contexto, mapa de atividade e linha multi-série. Cinco elementos onde couber, para julgar a diferenciação real entre as 5 famílias.

O mês em números

Linha de KPIs: número protagonista, rótulo em micro-caps, variação em pílula.

481 +9,4%
MWh gerados
97,4% +1,2 p.p.
disponibilidade
R$ 212 mil −3,1%
economia no mês
4 usinas ok   1 em atenção   1 crítica
status da carteira

DG16 O ponto de status é sempre acompanhado do rótulo textual — cor nunca sozinha.

Geração por usina — ranking

Barras-pílula horizontais, série única, valor em mono.

ValadaresGovernador TeófiloCaratingaAimorés 14211896 7451
Ver dados em tabela
Geração por usina, junho de 2026, em MWh, ordenada.
UsinaMWh
Valadares142
Governador118
Teófilo96
Caratinga74
Aimorés51

DG15 Pílula sobre trilha em surface-subtle; a trilha dá a escala sem precisar de grade.

Consumo por dia — destaque × contexto

A quarta-feira concentra o pico; as demais em cinza de contexto.

1.412 SegTerQua QuiSex SábDom
Ver dados em tabela
Consumo por dia da semana, em kWh.
DiakWh
Seg824
Ter1.021
Qua1.412
Qui748
Sex1.096
Sáb598
Dom374

DG17 Uma cor onde está a mensagem, contexto em cinza-200. Recomendado sempre que há UM achado.

Geração específica — 5 usinas, 8 semanas

Cinco séries em curva monótona, uma família de matiz por série, rótulo direto no ponto final. Barreiras lidera em 5,6 kWh/kWp; Teófilo cai para 3,0.

5,84,32,8 Valadares Colatina Barreiras Aimorés Teófilo S1S3S5S7
Ver dados em tabela
Geração específica semanal (kWh/kWp), últimas 8 semanas.
UsinaS8 (atual)
UFV Barreiras5,6
UFV Valadares5,2
UFV Colatina4,4
UFV Aimorés4,0
UFV Teófilo3,0

5 FAMÍLIAS turquesa · magenta · dourado · azul · violeta — o teste que você pediu: cinco informações diferentes, cinco matizes, nenhuma escala do mesmo tom.

Mapa de atividade — geração diária relativa

Heatmap de intensidade: a escala sequencial da §3c em uso. Célula hachurada = dia sem medição.

SegTerQua QuiSex menosmais
Ver o resumo em texto

Sumário do achado: a geração relativa concentra os picos nas quintas e sextas-feiras das semanas 1, 2 e 8; duas células sem medição (quarta da semana 2 e sexta da semana 4); nenhuma sequência de mais de dois dias consecutivos em intensidade mínima. O detalhamento diário vive no relatório da usina.

§3c Rampa sequencial 100→900 — intensidade É ordem, então aqui a família única é correta (o oposto da categórica). O no-data segue hachurado, distinto do "gerou pouco".

Preview v0.1 · sub-bloco DG · 2026-08-09. Tokens da §3c do seed-tokens.md v1.4. Regras em seed-dataviz.md (DG1–DG10). Nenhum botão desta página é decorativo.