Algo diferente no Power BI

A utilização mais frequente do Power BI a visualização de dados que nos permitem tomar decisões fundamentadas, no entanto, já vi diversas utilizações que não são criadas para a tomada de decisão mas sim nas potencialidades da ferramenta.

Se pesquisarem a galeria de relatórios da comunidade do Power BI (Data Stories Gallery), conseguem encontrar alguns exemplos da criatividade dos utilizadores.

Vou aqui apresentar uma forma diferente de apresentar uma imagem (pixelizada) no Power BI, não sei se esta técnica está presente nalgum outro blog, mas fica aqui a minha versão caso já exista.

Comecem por escolher uma imagem neste caso vou selecionar um “visto” pixelizado:

Conseguimos verificar que a imagem tem uma matriz bem definida de 11 linhas por 14 colunas e 3 cores distintas. No Excel então decidi recriar essa matriz com a indicação das cores fiquei com algum semelhante ao abaixo representado:

Ao mudarmos os códigos de cores pelas correspondentes cores, e após alguns ajustes das colunas ficamos com um cópia exata da nossa imagem dentro das células do Excel.

Conseguimos assim uma imagem que nos servirá de base para o Power BI, copiamos então os valores do Excel para o Power BI:

Efetuamos de seguida os seguintes passos:

  • Selecionamos a coluna Row
  • Fazemos Unpivot das Outras Colunas (neste passo renomeamos as colunas Attribute e Value para Column, Color)
  • Filtramos todas as Cores que estão em branco
  • Adicionamos um # a esquerda de cada cor
  • Adicionamos uma coluna de ID composta pela Linha e Coluna

Abaixo apresento um exemplo de todo o código da query assim com imagem final da tabela.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("pZM7DoAgDEDvwszgpyKehTAQvP8ZDKaEqlCLkg4d6HtNKc6pUWnFx3AemqTw2qlJWBhiDMbSpKASZ35xtYGwh7gMNLkrEh86+hGLSgLrBvPVuFAIU/ts4Jca52ku9nxH0sZHKXrX2/Qk6m4Ruuzzsfp0LTjyt+ricQoGiMyxudCFy1MyqPJr+a+Ti/0B", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Row = _t, #"1" = _t, #"2" = _t, #"3" = _t, #"4" = _t, #"5" = _t, #"6" = _t, #"7" = _t, #"8" = _t, #"9" = _t, #"10" = _t, #"11" = _t, #"12" = _t, #"13" = _t, #"14" = _t]),
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(Source, {"Row"}, "Column", "Color"),
    #"Filtered Rows" = Table.SelectRows(#"Unpivoted Other Columns", each ([Color] <> "")),
    #"Replaced Value" = Table.ReplaceValue(#"Filtered Rows",each [Color] , each "#" & [Color],Replacer.ReplaceText,{"Color"}),
    #"Added Custom" = Table.AddColumn(#"Replaced Value", "ID", each [Row] & Text.PadStart ( [Column], 3 , "0")),
    #"Changed Type" = Table.TransformColumnTypes(#"Added Custom",{{"ID", Int64.Type}, {"Row", Int64.Type}, {"Column", Int64.Type}})
in
    #"Changed Type"

Vamos então criar a nossa imagem no Power BI.

  • Criamos uma matriz com a seguinte configuração:
    • Linhas: Rows
    • Colunas: Columns
    • Values: First Color
    • Text Wrap: Desligado para todas as opções
    • Totais: Desligados
    • Formatação condicional do background e do texto igual ao valor da cor

Temos assim a nossa imagem completa no entanto podemos adicionar mais alguma “magia” neste processo utilizando o play axis e a coluna de ID que criarmos.

Vamos então criar uma tabela com os ID’s únicos da nossa tabela da imagem depois adicionamos a seguinte medida:

OK Mark Animation = 
IF (
    SELECTEDVALUE ( 'OK Mark'[ID] ) <= MAX ( 'OK Mark ID'[ID] ),
    MAX ( 'OK Mark'[Color] ),
    "#FFFFFF"
)   

Temos apenas de substituir os valores e a formatação condicional pela métrica acima e colocar a coluna ID da nova tabela no play axis ficamos assim com a seguinte animação:

Podemos então fazendo ligeiras variações criar diversas animações como o exemplo abaixo ilustra:

Com exercícios deste gênero que não nos prendem a um resultado de relatório podemos sempre aprender novas técnicas para utilizar no nosso dia a dia. Divirtam-se!!!

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s

%d bloggers gostam disto: