Tutorial Power BI: visualizaciones increíbles con el custom visual ‘HTML Content’

Cuando llevas un tiempo trabajando con Power BI cada vez le pides un poco más ¡y nunca defrauda! En este caso, estaba un poco cansado de las visualizaciones (gráficos) estándar y quería tener la posibilidad de personalizar la forma de presentar la información.
Obviamente podría crear mis propios “custom visuals” o visualizaciones personalizadas, pero eso implicaría programar. Necesitaba una forma más sencilla de presentar la información a mi manera….y descubrí el custom visual HTML Content.
Primer Paso: Instalar la visualización HTML Content
Lo primero que tenéis que hacer es instalar esta visualización en vuestro Power BI Desktop. Para ello, pulsamos los 3 puntos que se encuentras bajo los iconos de visualizaciones estándares de Power BI y del menú emergente seleccionamos “Obtener más objetos visuales“:

Esto nos lleva a la AppSource (tienda de aplicaciones) de Microsoft:

Recuerda seleccionar la Categoría “Todos” y poner el buscador “HTML Content” para encontrar esta visualización más rápido.
Pulsa “Agregar” y la visualización aparecerá bajo el resto de iconos en Power BI Desktop:

Paso dos: Entender cómo funciona HTML Content
La idea que me rondaba por la cabeza es poder personalizar como mostrar la información. Estuve investigando por internet y encontré este gran webinar de Daniel Marsh-Patrick.
La idea de esta visualización es:
- Crear un código en HTML con el diseño que buscamos
- Crear una medida en Power BI Desktop que sea igual a este código entrecomillado (un texto fijo)
- Sustituir la parte de código que queremos que sea dinámica por el campo o valor que queremos de nuestro conjunto de datos
- Indicar el nivel de desglose o detalle
No os preocupéis, que ahora lo veremos con un ejemplo y lo veréis más claro.
Paso tres: Manos a la obra
Para probar mi idea quise buscar algún tipo de dato que necesitase personalizar y se me ocurrieron los timelines de Twitter. Es verdad que hay visualizaciones Cards, pero tienen diseños preconfigurados.
¿Cómo quería que apareciese la información?
A continuación os presento como quería ver los tweets:
Como veis, hay iconos, y los textos están puestos en posiciones concretas. Sería muy difícil conseguirlo con una visualización predefinida de Power BI.
Para ello, las tablas con etiquetas <div> de HTML nos vienen genial porque puedes crear tablas con diferentes filas y columnas y colocar en cada “celda” imágenes o textos. El código HTML que diseñé lo podéis descargar en este link.
Si no domináis mucho HTML os dejo esta web que te da el código HTML de una tabla en base a unos parámetros que pones inicialmente (número de filas y columnas borde, espaciado,…).
Encontrar los datos
Necesitaba datos de Twitter y quería poner a prueba la visualización HTML Content así que necesitaba muchos tweets. Por suerte encontré en Kaggle un dataset con los tweets con los hashtags #Trump y #Biden durante las Elecciones en USA de este año.

Este dataset incluye el usuario, el contenido del tweet, el número de likes y el número de retweets entre otros muchos campos.
Crear la medida en mi informe de Power BI
Una vez tenía la información y el diseño HTML, ahora quedaba la parte más fácil. Sólo tuve que crear una medida llamada “Tweets” con el código HTML anterior donde sustituía los textos fijos del tweet por campos del dataset e iba concatenando strings para crear el código HTML.

Os dejo el código DAX de la medida en este otro link.
Configurar la visualización HTML Content
La parametrización de esta visualización es muy sencilla, ya que sólo debes indicarle la medida con el código HTML dinámico y el nivel de desglose (en este caso queremos que se muestre a nivel de tweet):

El informe final: tweets de las elecciones norteamericanas
Os presento el informe de las elecciones, en el que veréis un par de visualizaciones de tweets (una por candidato) creadas con HTML content.
Como veréis, el diseño es exactamente el que quería, ya que la opción de HTML nos da la versatilidad que necesitábamos para presentar la información como requeríamos al inicio (tarda un poco en cargar los tweets porque son más de 1 millón de registros a los que tiene que dar formato HTML):
Ya sabéis que si os suscribís a la newsletter de este blog (es gratuito) podréis descargar este fichero pbix original y el del resto de tutoriales y artículos de este blog.
Conclusiones
Me encanta HTML Content, tengo que decirlo.
Es verdad que tiene limitaciones y no puedes hacer todo lo que te permite HTML en general (por restricciones de la normativa de custom visuals de Power BI), pero abre una ventana a un sin fin de posibilidades.
Seguramente sea mucho más útil en infografías y data storytelling que en paneles de negocio al uso, pero seguro que os saca de algún apuro cuando vuestro cliente o usuario clave de negocio quiere ver el dato de una manera muy concreta.
¿A vosotros que os ha parecido?¿Lo usabais ya? ¿Hay algún otro custom visual que nos recomendáis revisar en vandalytic? ¡Esperamos vuestros comentarios!







Un comentario