Recientemente he tenido la oportunidad de desarollar una serie de dashboards que incluían el uso de navegación entre mapas. Viendo lo útil que puede llegar a ser, he decidido escribir el blog de esta semana centrado en cómo hacerlo. La idea se centra en navegar del nivel superior de jerarquía a los siguientes niveles (de país a comunidad y así hacia provincia, por ejemplo). Antes de entrar en la explicación y en los requisitos que nos harán falta os dejo una vista de cómo queda la interactividad aquí a continuación:
El resultado que se puede observar en la versión dinámica situada en la parte inmediatamente superior se corresponde con el uso de conjuntos en Tableau que nos permite navegar en la jerarquía regional entre el nivel de Comunidad Autónoma, en este caso de España, y el correspondiente nivel de Provincia pudiendo filtrar, además, la vista y ver sólo el conjunto de datos que se corresponden con la Comunidad Autónoma seleccionada.
Para el ejemplo mostrado he usado un archivo de texto que contienes los valores de Comunidades Autónomas y de Provincias para el caso de España, pero se puede realizar con cualquier conjunto de datos que disponga de campos con rol geográfico.
Crear el conjunto como medio de navegación
La forma para elaborar el drill down en el mapa es un conjunto, o set, que Tableau nos permite crear de todos y cada uno de los campos de datos que tengan la consideración de dimensiones, ya sean campos de texto o campos numéricos. La definición que Tableau utiliza para el conjunto de datos es la campos personalizados que definen un subconjunto de datos basado en ciertas condiciones.
Para el caso concreto y siguiendo el ejemplo que he mencionado previamente, usaremos un conjunto del nivel superior de jerarquía, en este caso, de Comunidad Autónoma. Para ello, iremos al panel de datos, o data pane, situado en Tableau Desktop en la parte izquierda del programa y será necesario utilizar el botón derecho en el campo que queremos usar como origen de nuestro conjunto de datos.
Una vez seleccionada esa opción, aparecerá una ventana emergente con la configuración del conjunto. Aunque generalmente los conjuntos se usan para destacar una serie concreta de valores, en el campo de este ejemplo lo vamos a utilizar sin seleccionar ninguna opción de las posibles ya que a continuación necesitaremos de un campo calculado que nos «seleccionará» automáticamente el campo en cuestión.
Inicialmente no marcamos ninguna opción en ninguna de las pestañas ya que la particularidad de este caso es que la condición de la que va a depender nuestro conjunto será un campo calculado que sólo tendrá efecto cuando el usuario selecciona una Comunidad Autónoma en el Dashboard para navegar.
Crear una serie de campos calculados que muestre/oculte cada vista
Tal y como hemos mencionado previamente, el conjunto, que depende de una condición, va a actuar en función de una serie de campos calculados que van a permitir desarrollar esta funcionalidad en Tableau. Para desarrollar este contenido necesitaremos utilizar dos hojas de trabajo: una será para el primer nivel de jerarquía y la otra para el segundo nivel aplicando los campos calculados en algunas de ellas y en otras no.
El primero de estos campos calculados lo llamaremos Drill-Down para las Provincias y consistirá en un argumento condicional (IF «» THEN «» ELSE «» END) mediante el cual especificamos a Tableau que cuando se seleccione alguna de las Comunidades Autónomas (o del nivel jerárquico con el que estemos trabajando) nos muestre el siguiente nivel jerárquico que tenemos en nuestra base de datos, en este caso se trata de las provincias de esa Comunidad Autónoma. Este campo calculado sólo aparecerá en la hoja de trabajo del primer nivel de jerarquía incluido en Detalle mientras que no será necesaria en el segundo nivel de jerarquía.
IF [Set de CCAA] THEN [Provincia] ELSE «» END
Lo que realizamos con este cálculo es que cuando no haya ninguna Comunidad Autónoma seleccionada, Tableau no nos mostrará el contenido de ninguna de las Comunidades Autónomas y nos devolverá a la vista general con todo ello. Puesto que vamos a trabajar con dos hojas de trabajo diferentes, este conjunto Set de CCAA sólo tendrá que aparecer en la hoja de trabajo relativa al segundo nivel de jerarquía y no en la hoja de trabajo del primer nivel.
El segundo de estos campos calculados lo denominaremos Mostrar/Ocultar y consistirá en un argumento condicional incrustado en una expresión de nivel de detalle, o LOD. Este campo calculado nos servirá para que Tableau oculte cada vista en función del nivel geográfico que queramos analizar de manera que cuando seleccionemos una Comunidad Autónoma nos muestre la hoja de trabajo relativa a las provincias (filtrando por las provincias específicas) y de la misma forma operando cuando deseleccionemos la provincia específica para volver a la vista original.
({MAX(IF [Set de CCAA] THEN TRUE ELSE FALSE END)})
Este campo calculado es booleano que solamente tendrá el valor Verdadero cuando haya una Comunidad Autónoma seleccionada mientras que será Falso cuando no haya ninguna seleccionada. Para ello, en un primer momento sin nada seleccionado y llevemos el campo a filtros solamente nos dejará seleccionar Falso por lo que solamente lo utilizaremos en la hoja de trabajo relativa a las Comunidades Autónomas en un primer momento y, una vez seleccionada una Comunidad Autónoma, lo llevaremos al panel de filtrado en condición de Verdadero para la hoja de trabajo de las provincias.
De esta manera, la forma en la que la pestaña de marcas se debe configurar tanto para la hoja de Comunidades Autónomas como para la hoja de las Provincias es la que aparece a continuación:
Configurar la acción de conjunto en el Dashboard
El siguiente y último paso para crear esta acción será utilizar las acciones del Dashboard y, particularmente, las acciones relativas al conjunto de datos para poder mostrar/ocultar cada vista y navegar entre mapas. Una vez que hemos ido siguiendo los pasos como se han marcado, es el momento de utilizar en nuestro Dashboard un contenedor (para el caso nos será indiferente el uso de su contenido de forma vertical u horizontal) y en el que incluiremos nuestras dos vistas al mismo tiempo quedando una imagen muy similar a la que se muestra a continuación:
En este punto, lo primero que debemos hacer es desactivar la opción que permite mostrar los títulos de las hojas de trabajo ya que a través del campo en filtros Mostrar/Ocultar la vista desaparecerá cuando se cumpla la condición y no queremos que el título quede manteniendo el espacio corrrespondiente.
El siguiente paso será configurar las acciones de Dashboard y para ello usaremos una acción de conjunto y una acción de filtrado:
- Acción de conjunto: Esta acción la vamos a configurar como que la hoja de origen son ambas hojas con contenido de rol geográfico ya que el objetivo es navegar de una a otra en ambos sentidos. De esta manera, podríamos pasar de Comunidad Autónoma a Provincia y de vuelta al deseleccionar ésta. Es necesario configurarla de tal forma que coja el conjunto, o Set, que hemos creado previamente (Set de CCAA) y la configuración de Asignar valores al conjunto una vez que seleccionemos (para añadir las correspondientes provincias) así como de eliminar todos los valores del conjunto cuando deseleccionemos para volver a tener la vista en la forma original.
- Acción de filtrado: Esta acción nos servirá para que la segunda hoja de trabajo se vea afectada por el contenido de la primera y consigamos así de una forma sencilla que se filtre el contenido de las Comunidades Autónomas en cuanto una de éstas ha sido seleccionada previamente. Para este caso particular, la hoja de origen será siempre la misma, que es la relativa a las Comunidades Autónomas mientras que la hoja de destino será la correspondiente a las provincias. Cuando deseleccionemos esta acción simplemente le pedimos a Tableau que muestre todos los valores.
De esta forma conseguiríamos dentro de ese contenedor mantener ambas visualizaciones y que simplemente haciendo click en cada uno de las visualizaciones podamos ir de una a otra y entrando en diferentes niveles de jerarquía. Espero que os sea de utilidad y saquéis partido a este tipo de funcionalidades en vuestras visualizaciones de Tableau explorando a través de la interactividad.