Como organizar gráficos por dia da semana no Power BI

Power BI · 5 min de leitura

Em resumo

Para o Power BI ordenar um gráfico pelos dias da semana (e não em ordem alfabética), crie uma coluna com o número de cada dia, selecione a coluna com o nome do dia e use Classificar por Coluna apontando para a coluna numérica. O mesmo vale para meses.

Como organizar gráficos por dia da semana no Power BI

Você monta um gráfico de vendas por dia da semana e ele aparece assim: sábado, sexta, segunda, domingo, quarta… Ou ordenado do maior para o menor valor, ou em ordem alfabética. Nunca de domingo a sábado. O motivo é simples: para o Power BI, "segunda-feira" é só uma palavra. Ele não sabe que ela vem depois de domingo. A solução é ensinar a ordem com uma coluna numérica e o recurso Classificar por Coluna.

Neste guia você vai criar as colunas de número e nome do dia no Power Query e configurar a classificação para o gráfico seguir a ordem da semana.

Caso prefira aprender por vídeo, veja o vídeo abaixo:

O que você vai aprender

  • Por que o Power BI não ordena dias da semana sozinho;
  • Como criar "Dia da Semana" (número) e "Nome do Dia" no Power Query;
  • Como usar Classificar por Coluna;
  • Como fazer o mesmo com meses;
  • A alternativa em DAX.

A base de vendas da aula está disponível para download logo abaixo do vídeo.

Passo 1: importar a base

  1. Clique em Obter Dados > Pasta de Trabalho do Excel e abra o arquivo Vendas;
  2. No Navegador, marque a caixinha da tabela Base;
  3. Clique em Transformar Dados para abrir o Power Query.

Passo 2: criar as colunas de dia

A coluna Data Venda precisa estar no tipo Data (ícone de calendário no cabeçalho). Com ela selecionada:

  1. Vá na guia Adicionar Coluna > Data > Dia > Dia da Semana. Surge uma coluna com números: 0 para domingo, 1 para segunda, até 6 para sábado;
  2. Selecione de novo a coluna de data e vá em Adicionar Coluna > Data > Dia > Nome do Dia. Surge a coluna com domingo, segunda-feira, terça-feira…

Se a base tiver colunas inúteis (no exemplo, duas colunas vazias vindas do Excel, como "Column9"), selecione-as e pressione Delete. Depois, Página Inicial > Fechar e Aplicar.

Use a coluna criada pelo Adicionar Coluna, e não o Transformar: o Transformar substitui a coluna de data, e você ainda vai precisar dela.

O problema, na prática

Insira um gráfico de colunas clusterizado, coloque Nome do Dia no Eixo X e Valor no Eixo Y. Os dias aparecem do maior faturamento para o menor. Mesmo mudando a classificação do visual para o eixo, o resultado é alfabético: domingo, quarta-feira, quinta-feira, sábado… Nenhuma das opções segue a semana.

Passo 3: Classificar por Coluna

A ideia é dizer ao Power BI: "ordene os nomes dos dias do mesmo jeito que você ordenaria os números". Como 0 vem antes de 1, domingo vem antes de segunda.

  1. Vá para a Exibição de tabela (o segundo ícone da barra lateral esquerda);
  2. Clique na coluna Nome do Dia;
  3. Na guia Ferramentas de coluna, clique em Classificar por Coluna;
  4. Escolha Dia da Semana.

Volte à Exibição de relatório. Agora, no gráfico, os dias aparecem na ordem: domingo, segunda, terça, quarta, quinta, sexta, sábado. Se ainda estiver ordenado pelo valor, clique nos três pontinhos do visual > Classificar eixo > Nome do Dia, em ordem crescente.

Semana começando na segunda

Muitas empresas preferem a semana de segunda a domingo. Ajuste a coluna numérica para segunda = 0. No Power Query, troque a fórmula da etapa por:

Date.DayOfWeek([Data Venda], Day.Monday)

Com a mesma classificação por coluna, o gráfico passa a começar na segunda.

Funciona igual para meses

O mesmo problema acontece com nomes de meses (abril antes de janeiro, em ordem alfabética). A solução é idêntica:

  • Crie Mês (número) e Nome do Mês em Adicionar Coluna > Data > Mês;
  • Classifique Nome do Mês pela coluna Mês.

Para abreviar ("jan", "fev"), crie uma coluna com os três primeiros caracteres e classifique também pelo número do mês.

Alternativa em DAX

Se preferir criar as colunas no modelo, use colunas calculadas na tabela (de preferência na tabela calendário):

Dia da Semana = WEEKDAY(Base[Data Venda], 2)
Nome do Dia = FORMAT(Base[Data Venda], "dddd")

Com o argumento 2, a WEEKDAY numera de segunda (1) a domingo (7). Depois, classifique Nome do Dia por Dia da Semana do mesmo jeito.

Boa prática: coloque isso na tabela calendário

Em modelos com mais de uma tabela de fatos, crie as colunas de dia e mês uma vez só, na tabela calendário, já com a classificação configurada. Todos os gráficos que usarem a calendário herdam a ordem certa.

Perguntas frequentes

Por que o Power BI não ordena os dias da semana?

Porque o nome do dia é texto. Sem uma coluna numérica de referência, ele ordena por valor ou em ordem alfabética.

Onde fica o Classificar por Coluna?

Na guia Ferramentas de coluna, com a coluna selecionada (na exibição de tabela ou no painel de dados).

Apareceu um erro ao classificar por coluna. Por quê?

Cada nome precisa corresponder a um único número. Se "segunda-feira" tiver números diferentes em linhas diferentes, a classificação falha.

Como ordenar meses no Power BI?

Do mesmo jeito: crie a coluna com o número do mês e classifique o nome do mês por ela.

Conclusão

Para o Power BI seguir a ordem da semana, dê a ele um número para cada dia e use Classificar por Coluna. Vale para meses, trimestres e qualquer texto com ordem própria. Baixe a base da aula e monte o gráfico. Para continuar aprendendo, veja o minicurso gratuito de Power BI Básico.

Bons estudos e até o próximo conteúdo! 🚀

Quer dominar o Power BI do básico ao avançado? Conheça o curso de Power BI online da Atuar: 245 aulas, certificado e monitoria 24h com IA.

Continue aprendendo