Crear etiquetas emergentes (pop ups) personalizados en gráficos

Los popups predeterminados de un gráfico de barras en QlikView son útiles, pero no siempre son exactamente lo que queremos mostrar.

El formato usual es el siguiente:
  • Nombre de dimensión = valor
  • Etiqueta de expresión = valor
Este formato podría no ser el que deseemos presentar o tal podríamos desear mostrar diferentes valores o agregar diferentes formatos a los números. Así mismo, podríamos querer incluir información adicional.

En la imagen anterior, el pop up muestra el valor de Ventas para Perú y si quiero ver el valor de los Costos, necesito colocar el cursor sobre la barra de Costos. Y qué si quiero ver el Margen S/. o Margen %.

Para empezar, crea un nuevo documento de QlikView, guárdalo en una carpeta e ingresa al editor de script [CTRL + E o Menú Archivo -> Editor de Script]

Crea una nueva pestaña e ingresa el siguiente script:
Data:
LOAD * INLINE [
    Pais, Ventas, Costos
    Perú, 1000, 800
    Ecuador, 800, 900
    México, 700, 500
    Argentina, 900, 750
    Colombia, 600, 450
];

1. A continuación crea un gráfico de barras con las siguientes características:
  • Dimensión: Pais
  • Expresión #1: Sum(Ventas)
  • Expresión #2: Sum(Costos)

2. Pulsa el botón "Finalizar".

3. Ahora deberías ver un gráfico de barras con dos barras por cada país. Confirme que al colocar el cursor sobre las barras del gráfico se vea como en la siguiente imagen.


4. Hacer clic derecho en el gráfico y seleccionar Propiedades.

5. Clic en la pestaña "Presentación" y desmarcar la opción "Etiquetas emergentes". Clic en "Aceptar" y compruebe que ahora ya no aparece el pop up anterior al colocar el cursor sobre las barras.

6. Ingresar nuevamente a propiedades del gráfico y hacer clic en la pestaña "Expresiones", agregar la siguiente expresión:
='Ventas: ' & Num(Sum(Ventas), '#,##0')

7. Colocarle como etiqueta "Mensaje" a esta expresión y hacer clic en "Aceptar".

8. Desmarcar la opción "Barra" para la expresión que acabamos de crear y activar la opción "Texto como mensaje emergente". Hacer clic en "Aceptar".

Note que ahora al hacer posar el cursor sobre las barras del gráfico muestra el mensaje con el formato que le hemos establecido.

9. Ingresar a propiedades del gráfico nuevamente y editar la expresión "Mensaje" con el siguiente script:
=Pais & chr(10) & 
'Ventas: ' & Num(Sum(Ventas), '$(MoneyFormat)') & chr(10) & 
'Costos: ' & Num(Sum(Costos), '$(MoneyFormat)') & chr(10) & 
'Margen: ' & Num(Sum(Ventas) - Sum(Costos), '$(MoneyFormat)') & chr(10) & 
'% Margen: ' & Num(1 - (Sum(Costos) / Sum(Ventas)), '0.0%')

10. Pulsar "Aceptar" para cerrar el diálogo de propiedades y revisar el nuevo pop up personalizado que se mostrará.


Como funciona

Al deshabilitar la opción barra de la expresión que acabamos de agregar, QlikView no intentará evaluar la expresión como un valor y no intentará hacer una barra para esta. Al activar la opción "Texto como mensaje emergente", le estamos indicando a QlikView que calcule el resultado de la expresión y la muestre como un pop up.

No olvidar que necesitamos desactivar la opción del pop up por defecto, en la pestaña Presentación o de lo contrario se mostrarán ambos juntos, esto claro a menos que deseen que se muestre de esa manera.

La función "chr" es útil para agregar caracteres no imprimibles, por ejemplo chr(10) lo que hace es agregar un salto de línea, por lo que el texto que venga a continuación se verá debajo del que le precede.

Note que hemos usado una variable para darle formato a los montos, MoneyFormat es una de las variables estándar de QlikView que se genera en el script cuando se abre por primera vez el editor de script.

Lo mejor de todo esto es que lo puede usar en todas partes, funciona en varios diferentes gráficos y es una gran manera de dar a los usuarios información adicional sobre los datos que están mirando.

Comentarios