Ir para conteúdo
  • 0

Histograma no Power BI


Felipe G Martins
Ir para solução Solucionado por Renato Rossato ,

Pergunta

  • Membros

Olá pessoal!!

Queria um help pra construir um histograma no Power BI. Tenho esse exemplo da imagem onde temos o Ano, o nome da pessoa e o esporte que ela praticou em cada ano.
Nesse histograma gostaria de saber a quantidade de esportes diferentes que foram praticados por x pessoas (de forma que funcione o filtro de ano). Estou anexando a tabela de dados simplificada. O resultado esperado seria um gráfico como esse da imagem:
image.png.e33353ce085108d05fc983f6dbdc95cf.png

exemplo histograma.xlsx

Editado por Felipe G Martins
Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0
  • Membros
  • Solução

Olá Felipe, veja se assim ajuda você ai.

Primeiro criei uma tabela com a  GenerateSeries com a contagem distinta dos esportes:

d_esportes_distintos = GENERATESERIES(1, DISTINCTCOUNT(f_Base[Esporte]), 1)

Depois fiz a contagem distinta dos Esportes em uma medida recuperando o contexto de filtro do nome:

Contagem Esportes =
CALCULATE(
DISTINCTCOUNT(f_Base[Esporte]),
VALUES(f_Base[Nome]) --Recuperou o contexto de nome
)

Em seguida usei variáveis para sumarizar por pessoa e a FILTER para criar o relacionamento virtual com o operador IN para que o eixo personalizado com a tabela d_esportes distintos funcionasse como o esperado:

Qtde Gráfico =
VAR vtabelaQtdePorPessoa =
SUMMARIZE( --Sumarizei os dados
          f_base,
          f_Base[Nome],
          "Contagem",
          [Contagem Esportes]
)
VAR vtabelafiltrada =
FILTER(
      vtabelaQtdePorPessoa,
      [Contagem] IN VALUES(d_esportes_distintos[Value]) --Relacionamento virtual
)
RETURN
COUNTROWS(vtabelafiltrada) + 0

Depois só colocar a coluna value da d_esportes_distintos no eixo x e a medida Qtde Gráfico no eixo Y.

image.png.ccaf857ad70f56d985efdf3ff049776a.png

Em anexo o PBIX.

Espero que assim consiga solucionar seu problema ai.

 

 

 

 

 

 

Solução Desafio.pbix

  • Gostei 1
  • Obrigado(a) 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
41 minutos atrás, Felipe G Martins disse:

Pra ficar melhor explicada a imagem, incluí essas tabelinhas no lado direito:
image.png.9b43b65a3a9eca7292a1b07b2f62b83e.png

Olá, @Felipe G Martins

Segue solução, espero que atenda sua necessidade:

*Caso atenda, gentileza marcar como "Solução" ✔️
image.png.94e6a0f7bac55880952f03827900ae40.png

Solução Total Esportes - Abraão Lincoln.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

Oi @Abraão Lincoln, obrigado mas não seria essa a solução.

No eixo X do gráfico de colunas eu precisaria da quantidade distinta de esportes e no eixo Y a quantidade de pessoas que praticam essa quantidade distinta de esportes.

Como no desenho abaixo:
image.png.3278e59ae71e5e9ef365a0eaf9582744.png

A tabelinha que eu havia colocado ao lado seria só pra facilitar o entendimento de quem são as pessoas que estão sendo contadas no eixo Y, pra cada quantidade de esportes. Acho que isso pode ter confundido.

Editado por Felipe G Martins
Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
Em 02/11/2022 em 16:50, Felipe G Martins disse:

Oi @Abraão Lincoln, obrigado mas não seria essa a solução.

No eixo X do gráfico de colunas eu precisaria da quantidade distinta de esportes e no eixo Y a quantidade de pessoas que praticam essa quantidade distinta de esportes.

Como no desenho abaixo:
image.png.3278e59ae71e5e9ef365a0eaf9582744.png

A tabelinha que eu havia colocado ao lado seria só pra facilitar o entendimento de quem são as pessoas que estão sendo contadas no eixo Y, pra cada quantidade de esportes. Acho que isso pode ter confundido.

Boa tarde @Felipe G Martins!

Veja se te atende. 

Se esta resposta resolver seu problema, gentileza classificá-la como Solução 

Atenciosamente,

Bernardo Vitor
(31) 99116-6134
LinkedIn: https://www.linkedin.com/in/bernardo-vitor

186128112_SoluoTotalEsportes-AbraoLincoln.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

Boa tarde @Bernardo Vitor! Obrigado por ajuda, mas a solução ainda não atende. O eixo X no gráfico do pbix enviado está com números decimais, o visual fica confuso independente do filtro de ano aplicado e os resultados não batem com a imagem que enviei.

Queria muito uma solução aplicável ao gráfico de colunas nativo do Power BI, mas não consegui ainda uma forma de tornar isso possível.

@Leonardo Karpinski, tá aí um bom case pro #MestreResolve 😅

Link para o comentário
Compartilhar em outros sites

  • 0
Em 04/11/2022 em 14:54, Felipe G Martins disse:

Boa tarde @Bernardo Vitor! Obrigado por ajuda, mas a solução ainda não atende. O eixo X no gráfico do pbix enviado está com números decimais, o visual fica confuso independente do filtro de ano aplicado e os resultados não batem com a imagem que enviei.

Queria muito uma solução aplicável ao gráfico de colunas nativo do Power BI, mas não consegui ainda uma forma de tornar isso possível.

@Leonardo Karpinski, tá aí um bom case pro #MestreResolve 😅

Que tal lançar um desafio interno para os alunos resolverem no Discord?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

Segue minha proposta de solução.
1) Criei uma tabela auxiliar dNumEsportes com números de 1 a 10, representando a quantidade de esportes (usando a GENERATESERIES). O objetivo é usar no eixo x do gráfico.

2) Criei a seguinte medida para calcular o número de pessoas para cada quantidade de esportes:

Num Pessoas = 
VAR vNumEsportes = 
    MAX(dNumEsportes[Qtd Esportes])
VAR vTabelaSumarizada = 
    SUMMARIZE(
        fDados,
        fDados[Nome],
        "QtdeEsportes",
        DISTINCTCOUNT(fDados[Esporte])
    )
VAR vNumPessoas = 
    FILTER(
        vTabelaSumarizada,
        [QtdeEsportes] = vNumEsportes
    )
RETURN
    COUNTROWS(vNumPessoas)

 

20221114_QtdePessoasPorQtdeEsportes.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

Bom Dia,

Segue solução que cheguei.

 

Basicamente o que fiz foi criar uma medida que mostrasse a quantidade de esportes.

image.png.13fa1c2eb7e59d6a97c8c6a77ebe3c86.png

 

Depois eu criei um tabela de uma coluna que vai de 1 até o número máximo de esporte, ou seja, eu sei qual é a quantidade máxima de esporte de uma pessoa, respeitando o filtro aplicado. Isso seria o meu eixo X.

image.png.3eec9cc7a446b8ec2f6bb9f41bc65f9f.png

 

Depois eu criei uma medida onde eu conseguiria ver a quantidade de pessoas que possuem aquela quantidade de esporte.

image.png.a350543e3581b0737d70f090ebef9ae9.png

 

 

Qtd_Pessoas_Eixo_Dinamico.pbix

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...