En muchas ocasiones sería útil tener un custom date filter en Tableau, es decir, un filtro de fecha personalizado que muestre los datos de la última semana o del último mes, por ejemplo, pero que al mismo tiempo nos permita elegir un periodo de tiempo específico. Mediante el uso de parameter actions podemos crear justo el filtro que necesitamos. Aquí tenemos un ejemplo práctico:
En primer lugar, creamos las visualizaciones (por ejemplo, bar chart y trend line) utilizando nuestra fuente de datos, y luego trabajamos en el filtro: es aconsejable utilizar una data source separada en la que nombraremos las labels del filtro de datos. En un archivo de Excel, cree una columna «Labels»:
Conectémonos a la datasource y recordemos que debemos ordenar inmediatamente el nuevo campo Labels desde default properties del panel de datos, estableciendo el orden en el que queremos mostrar los periodos dentro del filtro.
A continuación, creamos un parámetro string «date parameter» que utilizaremos para mostrar el período seleccionado por el filtro o escribir el período de interés. Establece allowable values =»All » y deja vacío current value.
A continuación, necesitamos un campo calculado, que llamaremos «p_bullet», para mostrar la barra completa junto al periodo de interés seleccionado:
IF [Label] = [date parameter] THEN ‘●’ ELSE ‘○’ END
y un campo «p_label color» que se utilizará en la marca de color para asignar un color de fondo diferente a la opción Custom del filtro de fechas que a los demás períodos (por ejemplo, un gris más oscuro)
IF ATTR([Label]) = ‘Custom’ THEN MIN(0) END
Vamos a abrir una nueva hoja que vamos a llamar «date buttons», establecemos como marca Cuadrado y hacemos que el campo Labels y p_bullet en filas y en el texto, el campo p_label color en el color y personalizarlo. Oculta las cabeceras de los dos campos de la fila.
Ahora creamos los campos calculados dentro de la fuente de datos original, por ejemplo, Sample Superstore, para los distintos períodos de filtro de fechas:
Ahora creamos los campos calculados dentro de la fuente de datos original, por ejemplo, Sample Superstore, para los distintos períodos de filtro de fechas:
- last week: DATEPART(‘week’, [Order Date]) = DATEPART(‘week’, DATEADD(‘week’, -1, DATETRUNC(‘year’, [Order Date])))
- last month: DATEPART(‘month’, [Order Date]) = DATEPART(‘month’, DATEADD(‘month’, -1, DATETRUNC(‘year’, [Order Date])))
- Q1: DATEPART(‘quarter’, [Order Date]) = DATEPART(‘quarter’, DATETRUNC(‘year’, [Order Date]))
- Q2: DATEPART(‘quarter’, [Order Date]) = DATEPART(‘quarter’, DATEADD(‘quarter’, 1, DATETRUNC(‘year’, [Order Date])))
- Custom: [Order Date] >= [start date] AND [Order Date] < [end date]
En el último caso Custom [start date] y [end date] son parámetros de tipo fecha con un Rango que incluye los valores del campo Order Date.
El último campo calculado que necesitamos ahora es el «date filter» para hacer que los distintos periodos de fechas se comuniquen entre sí.
case [date parameter]
When ‘last week’ THEN [last week]
When ‘last month’ THEN [last month]
WHEN ‘Q1’ THEN [Q1]
WHEN ‘Q2’ THEN [Q2]
WHEN ‘Q3’ THEN [Q3]
WHEN ‘Q4’ THEN [Q4]
ELSE
[Custom]
END
Insertemos ahora este nuevo campo calculado lógico en el filtro de nuestras vistas y pongámoslo = True. También insertamos un filtro de fecha adicional, por ejemplo, sólo para el año 2020.
Por último, creamos nuestro dashboard con las vistas y un conr container un botón, en el que colocamos la hoja «date buttons», los parámetros de fecha start/end y el parámetro «date period» en la parte superior. A continuación, podemos personalizar la imagen del botón en función de cómo queramos mostrar el date controller (por ejemplo, un menú desplegable).
Por lo tanto, insertamos una acción de parámetro seleccionando «date buttons» como hoja, «date parameter» como parámetro y Labels como campo.
También introducimos una acción de resaltado para asegurarnos de que todos los date period estén siempre resaltados: creo una variable DUMMY en la fuente de datos Labels (campo calculado = ‘ ‘) y la coloco en la hoja de botones de fecha.
Ahora creo una acción de resaltado en la misma hoja seleccionando el campo DUMMY.
Por fin, nuestro controlador de fechas personalizado está listo.
Para leer más consejos útiles y continuar con tu formación en Tableau, puedes seguirnos en Linkedin , ¡para comentar este y otros contenidos con otros seguidores!