(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Como criar um gráfico de imagem dinâmica em Power BI: passo a passo

João Barros 15 de October de 2026 4 min de leitura

Este tutorial mostra como criar um visual que apresenta imagens dinâmicas em Power BI (por registo ou por medida) — útil para catálogos, relatórios de produto ou painéis com pictogramas condicionais. Explico o porquê das opções (URL, Base64, coluna/medida) e um passo a passo prático para evitar erros comuns de acesso e formatação.

Pré-requisitos

  • Power BI Desktop (versão recente).
  • Dados com pelo menos uma coluna de identificador do item e uma coluna com URL de imagem ou nome de ficheiro.
  • Conhecimentos básicos de Power Query e DAX.

Passo 1: Escolher entre URL pública, servidor protegido ou Base64

Antes de mais, decida como as imagens vão chegar ao relatório: via URL pública (ex.: CDN), via servidor protegido (ex.: SharePoint, Azure Blob) ou inline (Base64). A escolha afeta a segurança, o desempenho e se utiliza coluna ou medida em Power BI.

Passo 2: Preparar os dados no Power Query

No Power Query, normalize os caminhos/URLs das imagens e crie uma coluna final que o Power BI possa ler. Se tiver apenas nomes de ficheiro, concatene o caminho base; para SharePoint ou Blob pode construir o URL com token, se necessário.

// Exemplo: adicionar coluna com URL completo no Power Query (M)
= Table.AddColumn(#"Tabela Inicial", "ImageURL", each "https://cdn.exemplo.com/images/" & [FileName])

Se preferir Base64 (incorporar a imagem), converta o conteúdo do ficheiro para Base64 em Power Query e devolva uma coluna como "data:image/png;base64,{string}". Tenha em atenção o tamanho do modelo.

Passo 3: Carregar a tabela e definir categoria de dados

Carregue os dados para o modelo e, no separador Model ou na vista de Dados, seleccione a coluna ImageURL. Em "Categoria de Dados" escolha "Image URL" (ou "Image" em algumas versões). Isto indica ao Power BI para tratar os valores como imagens.

Passo 4: Criar um visual de imagem por linha (tabela com imagens)

Para mostrar imagens por registo, adicione uma Tabela ou Matriz e coloque a coluna ImageURL no campo desejado. O Power BI renderiza a imagem se a coluna estiver marcada como Image URL.

// Exemplo DAX: medida para escolher URL por condição
SelectedImageURL =
IF(
  MAX(Produtos[Stock]) <= 0,
  "https://cdn.exemplo.com/images/outofstock.png",
  MAX(Produtos[ImageURL])
)

Se pretender usar uma medida (ex.: imagens condicionais), crie a medida como cadeia de texto com o URL e utilize-a num visual compatível com medidas que retornam Image URL (nem todos os visuais aceitam medidas como imagens).

Passo 5: Usar um visual personalizado para mais flexibilidade

Os visuais nativos têm limitações (ex.: medidas como Image URL nem sempre funcionam). Instale um visual do marketplace como "Image by CloudScope" ou "Card with States" para suportar imagens via medida ou Base64. Importe o visual e arraste a medida/coluna para o campo de imagem.

Passo 6: Tratar erros comuns

Erros frequentes: imagens não aparecem (CORS/segurança), URLs incorretos, imagens demasiado grandes, ou modelos inchados com Base64. Soluções rápidas:

  • Verifique a URL diretamente no browser para confirmar o acesso público.
  • Se o servidor exigir autenticação, use um conector (SharePoint/Azure) ou um proxy público seguro.
  • Prefira URLs públicas ou CDN para desempenho; utilize Base64 apenas para poucas imagens pequenas.
  • Marque a coluna como Image URL e atualize o visual.

Verificar o resultado

Confirme que as imagens aparecem nas linhas esperadas, que as condicionais (medidas) alteram a imagem quando modifica filtros e que não há grandes impactos na memória. Teste com diferentes utilizadores (se existir RLS ou conteúdo protegido) e abra o relatório no Power BI Service para validar publicações e eventual bloqueio por CORS.

Conclusão

Após este processo tem um relatório com imagens dinâmicas por registo ou por medida, útil para catálogos, indicadores visuais ou estados. Próximos passos: experimentar Base64 para ícones pequenos, usar um visual personalizado para animações ou otimizar imagens no CDN. Dica: se as imagens falharem no Service, verifique permissões e CORS no servidor de origem.