Power BI: Duração em formato hh:mm:ss no gráfico

Autor: Máximo Alexandre
Data de Criação: 12/04/2025 12:48

Objetivo

Permitir a visualização clara e proporcional de durações em gráficos de forma numérica (para visualização) e formatada (para interpretação humana).

Problema

No Power BI, ao tentar exibir a soma de durações formatadas como hh:mm:ss em gráficos (ex: colunas ou barras), o campo formatado não pode ser arrastado para o eixo Y, impossibilitando a visualização direta dos valores.

Causa

Medidas formatadas em texto (string), como hh:mm:ss, não são suportadas como valores numéricos no eixo Y de gráficos no Power BI. O eixo exige campos numéricos (como decimal ou inteiro) para desenhar proporções corretamente.

Aplicável em

  • Dashboards com apontamentos de produção

  • Registros de tempo de processos

  • Controle de tempo de operadores, turnos ou equipamentos

  • Qualquer cenário que exija visualização de duração acumulada em gráficos


Solução

Utilizar duas medidas:

  1. Uma medida numérica (em minutos ou segundos) para alimentar o eixo Y.

  2. Uma medida formatada como hh:mm:ss apenas para exibição (como dica de ferramenta ou rótulo de dados).


Passo a Passo da Solução

1. Criar a medida numérica (em minutos e segundos):

dax
Em minutos: SomaDuracaoMin = SUM('Apontamentos'[Duracao]) * 1440 (Multiplicamos por 1440 pois o Power BI interpreta tempo como fração de dia (1 dia = 1440 minutos).

Em segundos:

DuracaoSegundos = SUM('Apontamentos'[Duracao]) * 86400 (Sabendo que 1 dia = 86400 segundos)

2. Criar a medida formatada (opcional):

dax
SomaDuracaoFormatada =
VAR TotalSegundos = SUM('Apontamentos'[Duracao]) * 86400
VAR Horas = INT(TotalSegundos / 3600)
VAR Minutos = INT(MOD(TotalSegundos, 3600) / 60)
VAR Segundos = MOD(TotalSegundos, 60)
RETURN
FORMAT(Horas, "00") & ":" & FORMAT(Minutos, "00") & ":" & FORMAT(Segundos, "00")

3. Montar o gráfico

  • Eixo X: Campo de data ou categoria desejada

  • Eixo Y: SomaDuracaoMin

  • Legenda (opcional): Operador, recurso, etc.

  • Dica de ferramenta (tooltip): SomaDuracaoFormatada

  • Rótulo de dados (opcional): Ativar e usar SomaDuracaoFormatada


Observações

  • Evite utilizar campos Time direto como medida, pois o Power BI trata como fração de dia, podendo causar interpretações erradas se não convertido corretamente.

  • O Power BI não suporta texto no eixo Y.

  • O campo de duração deve estar em formato decimal/fração de dia para que os cálculos funcionem corretamente.

Você achou esse artigo útil?