Power BI — como aplicar cor de fundo dinamicamente aos controles visuais?

Renato Haddad
4 min readJul 3, 2019

--

O Power BI tem se tornado uma das melhores ferramentas de relatórios no mercado, e a cada mês temos atualizações com novas features. Uma das mais aguardadas foi liberada na versão de maio/2019, e neste artigo vou mostrar como que você deve aplicar a formatação condicional para automaticamente aplicar na propriedade cor de fundo de um objeto.

Cenário de dados

Usei como fonte de dados uma planilha em Excel com dados de vendas, categoria, produto, preço, e quantidade vendida, Basta criar um novo projeto no Power BI Desktop e associar uma fonte assim.

A primeira coisa a fazer é definir uma nova medida chamada PrecoMedio que conterá o valor referente a média do preço, sendo:

PrecoMedio = AVERAGE(Dados[Preço])

Em seguida, adicione um controle do tipo Cartão e associe a esta medida. O resultado mostra o preço médio de todos os produtos. Veja que coloquei uma tabela contendo as colunas: categorias, preço médio e quantidade média.

Dados de vendas

Agora, o objetivo é criar uma formatação condicional para o cartão de forma que a cor de fundo seja dinâmica, de acordo com uma condição associada à medida PrecoMedio. Então, selecione o cartão, ative a propriedade Tela de Fundo. Aqui você pode definir uma cor, basta seleciona-la na lista, porém esta cor será fixa, independente do valor do preço médio. E, para ficar dinâmica, veja na figura a seguir que tem um botão logo a frente da propriedade Cor, é nele que podemos definir uma regra.

Tela de fundo

Clique no botão destacado na figura anterior Fx (formatação condicional), será aberta a janela para você definir qual regra se aplica. Aqui você tem que associar qual medida será avaliada, neste caso PrecoMedio, portanto, selecione esta medida na combobox — Com base no campo.

As regras, monte conforme a figura a seguir, sendo que se o valor for entre o mínimo e menor que 1000, a cor será vermelha; se for maior ou igual a 1000 e menor ou igual ao Máximo, a cor será verde. Ao final, clique no botão OK.

Regras da formatação condicional

O resultado é imediato, note que a cor de fundo do cartão é verde, afinal a média é R$ 1.345,77, segundo a regra está correta a cor, pois o valor é maior que 1000.

Regra aplicada

O mais legal é que é de acordo ao contexto, ou seja, se você selecionar uma categoria em outro controle, uma tabela por exemplo, a regra é aplicada. Na figura a seguir, selecionei a categoria Impressora na tabela e o cartão já mudou de cor, fantástica interação.

Regra com filtro aplicado

Este recurso está disponível em vários objetos, veja na figura a seguir, adicione um cartão de linha múltipla contendo a Categoria, o Preço Médio e a Qtde Média.

Cartão de Linha múltipla

A ideia é a mesma que a anterior, aplicar um cor de fundo para o cartão de acordo com uma regra. Antes de mais nada, crie uma nova medida chamada QtdeMedia contendo a fórmula a seguir:

QtdeMedia = Average(Dados[Qtde])

Agora sim, na propriedade Tela de fundo do cartão, clique no botão de formatação condicional. Na tela aberta, monte a regra conforme a figura a seguir, sendo que se a quantidade média for menor que 40, a cor será roxa.

Regra da cor

Clique no botão OK e veja o resultado imediato com a cor Roxa de fundo. Caso aplique um filtro selecionando uma ou mais categorias, veja que o fundo fica branco, ou seja, tudo depende dos valores aplicados à regra.

Cor com e sem filtro

Conclusão

Ter relatórios com um visual bem definido é tudo para se entender a informação imediatamente. E, aplicando estes recursos de formatação condicional, você agrega muita valor aos objetos, afinal, tudo o que você expressar visualmente nos gráficos para um bom entendimento, é o diferencial para o sucesso do projeto.

Boa sorte, sucesso nos projetos de Power BI, se precisar treinar o seu time, fale comigo rehaddad@msn.com
No canal http://www.youtube.com/c/RenatoHaddadMVP você tem uma playlist com vários vídeos de Power BI com dicas e truques.

--

--

Renato Haddad
Renato Haddad

Written by Renato Haddad

Renato é Microsoft Most Valuable Professional, apaixonado por Power BI, AI, VS 2019, ASP.NET, escritor, professor de Pós Graduação e velejador de Kitefoil

No responses yet