En esta primera edición de Tableau Bites (una serie de publicaciones cortas y fáciles de leer sobre consejos útiles de Tableau), cubriremos cómo cambiar dinámicamente el nivel de fecha de una visualización dependiendo de la elección de fecha del usuario (año, trimestre, mes).

Selector de nivel de fecha utilizando un parámetro en Tableau Desktop
Vista previa del resultado final de este tutorial

En nuestro proyecto de Tableau deseado (en mi caso, utilizaré este conjunto de datos que contiene información sobre ventas de bicicletas en Europa como ejemplo), vamos a crear un nuevo parámetro haciendo clic en la flecha desplegable que se encuentra en la sección superior izquierda de la interfaz, junto a la barra de búsqueda (Img. 1).

Creando un parámetro en Tableau Desktop
Img. 1 - Creando un parámetro en Tableau Desktop

El siguiente paso es configurar el parámetro. Primero, nómbralo como ‘Date Level’ y completa las propiedades con la siguiente configuración (Img. 2).

Configuración del parámetro
Img. 2 - Configuración del parámetro

Básicamente, el parámetro tendrá tres opciones: Mes, Trimestre y Año. Estos son los valores que el usuario podrá alternar para cambiar las vistas de los datos.

Ahora es el momento de crear el Calculated field que contendrá la lógica para generar el resultado deseado.

Nuevamente, haz clic en la flecha desplegable ubicada en la sección superior izquierda de la interfaz y haz clic en ‘Crear calculated field’.

Nombra el calculated field como ‘Date Level CF’ y pega el siguiente fragmento de código:

CASE [Date Level]
    // Year format: 2022
    WHEN "Year" THEN STR(YEAR([Date]))
    // Quarter format: Q2-2022
    WHEN "Quarter" THEN 'Q'+STR(DATEPART('quarter',[Date])) + '-' + STR(YEAR([Date]))
    // Month format: August-2022
    WHEN "Month" THEN STR(DATENAME('month', [Date])) + '-' + STR(YEAR([Date]))
END

Este fragmento de código es bastante autoexplicativo, pero para hacerlo aún más claro, es una instrucción CASE que selecciona una salida específica tomando la selección actual del parámetro como entrada. Como ejemplo, si el usuario selecciona la vista de Quarter, la salida del nivel de datos estará en el formato ‘quarter-año’ como se muestra en el código.

Ahora que toda la lógica está lista, pongámoslo todo en la vista.

Arrastra la píldora Date Level CF al contenedor de columnas y tu medida deseada al contenedor de filas, en mi caso usaré Profit (Img. 3). Además, no olvides hacer clic derecho en el parámetro Date Level y hacer clic en ‘Mostrar parámetro’ para poder alternar entre las vistas de nivel de fecha creadas.

Configuración final en la interfaz de Tableau Desktop
Img 3. - Configuración final en la interfaz de Tableau Desktop

Ahora, si cambias dinámicamente el valor del parámetro, verás cómo el nivel de fecha en el eje X cambia.

Selector de nivel de fecha usando un parámetro en Tableau Desktop
Resultado final (fechas no ordenadas)

Ten en cuenta que las fechas mostradas en el gif anterior no están ordenadas correctamente. Para solucionarlo, haz clic derecho en la píldora Date Level CF en el contenedor de columnas y haz clic en Ordenar para ordenar los valores por el campo de fecha y mostrarlos correctamente (Img. 4).

Orden correcto
Img 4. - Ordenar las fechas para mostrarlas correctamente

Si quieres ver una demostración en vivo del resultado final, puedes probarlo en la página de Tableau Public del proyecto.

Si tienes dudas específicas, no dudes en contactarme a través de Twitter.

Este articulo fue mencionado en The weekly DataFam Roundup by Tableau.