Power BI · visuais personalizados

Onze visuais de Power BI escritos do zero, compilados com o pbiviz oficial e rodando ao vivo aqui nesta página.

Cada cartão abaixo é uma instância real do pacote .pbiviz que você baixa: os mesmos arquivos que o Power BI carrega no sandbox. O host do Power BI foi substituído por uma camada de compatibilidade no navegador, que responde a seleção, tooltips, menu de contexto, persistProperties e applyJsonFilter.

Os dados são sintéticos e determinísticos. O filtro aplicado em um cartão vale para todos os outros, como num relatório de verdade — experimente clicar numa linha do filtro visual ou da consulta SQL.

11
visuais no pacote
11/11
renderizando no harness
—
soma dos pacotes
—
controles de formatação

Como levar para o seu relatório

São visuais de código, não do AppSource: você importa o arquivo no Desktop ou publica na organização. Cada arquivo tem assinatura própria (o mesmo guid não pode ser sobrescrito), então cada visual entra como um item separado na paleta.

01

Baixe o pacote

Use o botão .pbiviz no cartão do visual. Cada arquivo tem de 11 a 25 KB e leva tudo embutido: código, estilos e ícone.

02

Importe

No Desktop: painel Visualizações, reticências, Importar um visual de um arquivo. No serviço: Visualizações → Importar visual → Arquivo (exige permissão de organização).

03

Solte os campos

Cada cartão lista os campos que o visual espera. Depois é só ajustar tema, cor de destaque, casas decimais e densidade no painel Formato.

Antes de tentar no ambiente corporativo: visuais personalizados que não vêm de uma lista aprovada costumam ser bloqueados no tenant. Se for o caso aí na XP, o caminho é pedir liberação ao administrador do Power BI — ou eu reescrevo a mesma ideia em Deneb (Vega-Lite) ou em SVG via medida DAX, que passam pelo filtro de conteúdo.

Os visuais, ao vivo

Passe o mouse, clique, abra o menu de contexto (botão direito).

Comparativo

Mapeamento de dados que cada visual pede no painel de campos e o tamanho final do pacote. "Categórico com séries" é o formato Classe + Série + Medida, o mesmo que a barra empilhada usa.

Visual Mapeamento Campos Pacote

Verificação

Antes de publicar, cada pacote compilado foi carregado num harness em Node com jsdom, instanciado com um host falso e exercitado: update com dados de exemplo, redimensionamento para 420×300, uma passagem sem dados, hover, clique, menu de contexto e disparo de filtro. "Nós" é a contagem de elementos que o visual criou no DOM; "redimensionado" e "sem dados" provam que ele não quebra quando o cartão encolhe ou o campo é removido.

Visual Status Nós Redimensionado Sem dados Formatação Interações exercitadas

O que não foi verificado: importação no Power BI Desktop e a geração do pbipx oficial, porque isso exige Windows. O compilador é o mesmo dos dois lados (Power BI Visual Tools 7.2.1, API 5.11.1) e a assinatura do pacote foi feita ao final do pbiviz package, mas o teste final com dados reais é no seu Desktop.

Limites e próximos passos

O que já está pronto

  • Onze visuais com seleção cruzada, tooltips, menu de contexto e filtro real.
  • Tema com quatro presets, cor de destaque, casas decimais e controles específicos por visual.
  • Estados de vazio e de erro tratados, sem quebrar quando o dado ou o espaço acaba.
  • Repositório com o código, o pipeline de build e o harness de verificação.

O que falta para virar produto

  • Certificação do AppSource (exige revisão da Microsoft e suporte a tema de alto contraste, localização e navegação por teclado).
  • Alto contraste: hoje o tema é meu, não o do relatório.
  • Textos em inglês para publicar fora do Brasil.
  • Testes automatizados por visual (hoje a verificação é o harness compartilhado).

Formatos alternativos

  • Deneb: colo uma especificação Vega-Lite e o visual certificado desenha — passa em tenant restrito.
  • SVG via medida DAX: nada para instalar, funciona em tabela e cartão.
  • Python/R: só para casos estáticos, com atualização manual.