DATTA BI — Drill-down e drill-up
Um gráfico por UF responde "onde está o problema?" — mas a pergunta seguinte é sempre "e dentro da UF?". Com o drill-down, o próprio visual responde: dê um duplo clique numa barra e ele desce um nível na hierarquia (UF → município → bairro), filtrando pela categoria clicada. O drill-up volta um nível com um clique. Tudo acontece dentro do card, sem sair do dashboard e sem reescrever a consulta à mão.
Como ativar
Declare a hierarquia do visual — do nível mais agregado para o mais detalhado — no campo drillX da configuração de canais do visual (bindingsJson):
{
"x": { "column": "uf" },
"y": { "column": "id", "agg": "COUNT" },
"limit": 30,
"drillX": ["uf", "municipio", "bairro"]
}Como usar
- Descer (drill-down): duplo clique numa barra — ou em outro elemento do visual. O visual re-renderiza filtrando pela categoria clicada e agrupando pelo próximo nível da hierarquia.
- Subir (drill-up): uma trilha aparece no topo do card com a seta
↑— clique para voltar um nível. - Voltar ao início: continue clicando
↑até o nível raiz; o dashboard inteiro re-renderiza.
Exemplo prático — do estado ao bairro em três cliques
- Num visual "Beneficiários por UF" com a hierarquia
["uf", "municipio", "bairro"], dê um duplo clique na barra BA. - O visual passa a mostrar os municípios da Bahia; um duplo clique em Salvador desce para os bairros.
- A trilha no topo do card mostra o caminho percorrido — clique em
↑para voltar a Salvador e de novo para voltar à visão por UF.
Como o filtro chega até a consulta
Ao descer um nível, a plataforma reaproveita a configuração salva do visual e sobrescreve apenas o que mudou: o eixo passa a ser o próximo nível da hierarquia e a categoria clicada entra como filtro acumulado. A substituição acontece nas chaves do primeiro nível da configuração — o que você não mexeu continua valendo — e os filtros acumulados viram uma cláusula |> WHERE coluna = "valor" AND ... na consulta DATTAX gerada.
A plataforma também expõe um endpoint que renderiza um visual já com o drill aplicado, recebendo a categoria escolhida e o nível de destino — útil para integrações que montam a navegação por fora da tela. Veja a referência de API.
Limitações
- O drill-down funciona em visuais montados a partir de um dataset e dos canais de eixos (
datasetId+bindingsJson). Visuais com script DATTAX escrito à mão ignoram o ajuste e renderizam o script literalmente. - A profundidade máxima é o número de níveis declarados em
drillX. Ao tentar descer além do último nível, o visual mostra o aviso "Nível mais detalhado da hierarquia". - Filtro cruzado (clique simples) e drill-down (duplo clique) são independentes e funcionam ao mesmo tempo: o filtro cruzado aplica o filtro em todos os outros visuais do dashboard; o drill-down muda apenas o visual clicado.
Exemplo pronto para explorar
O seed seed-demo-data.sh cria o dashboard mds-dash-drilldown com dois visuais já configurados:
- Beneficiários por UF — hierarquia
["uf", "municipio"]sobre o datasetds-pessoas. - Gasto por Programa — hierarquia
["programa", "tipo"]sobre o datasetds-beneficios.