Para la semana 21 de #WorkoutWednesday, Ann Jackson nos desafía a una nueva aventura al lado obscuro, con un reto lleno de trucos y detalles.

En el ejercicio se requiere crear un gráfico de tipo dot plot / strip plot. Un gráfico dot plot es un gráfico estadístico que consiste en puntos de datos representados en una escala simple que normalmente utiliza círculos rellenos.

Los principales requerimientos del ejercicio son:

  • Representar con un círculo a cada Fabricante dentro de cada Sub-Categoría.
  • Cada círculo se ubicará en el eje “x” de acuerdo a su porcentaje de utilidad
  • El tamaño del círculo estará determinado por el nivel de Ventas.
  • En cada círculo se manejarán dos colores. 1) En la parte superior el color representará el porcentaje de utilidad; 2) En la parte inferior del círculo, el color servirá para identificar al fabricante con el mejor nivel de ventas dentro de la Sub-Categoría.
  • El nombre del fabricante con mayor nivel de ventas en cada Sub-Categoría, deberá aparecer o ser desplegado.
  • Los nombres de las Sub-Categorías se muestran sobre la gráfica, invadiendo la parte inicial del eje.

A continuación, comparto los pasos que seguí.

Paso 1: Crear la variable “Profit Ratio”

Profit Ratio  =

SUM([Profit]) / SUM([Sales])

Paso 2: Calcular si el Fabricante es el Top 1 en Ventas.

Tendrá dos valores: “True” para el fabricante de mayor venta y “False” para el resto.

Top 1 in Sales?  =

RANK(SUM([Sales])) = 1

Paso 3: Crear las variables “Top Label Display” y “Top Label Tooltips”

Ambas variables sólo tendrán valor cuando se trata del fabricante con mayores niveles de ventas.

Top Label Display”  =

IIF([Top 1 in Sales?], ATTR(UPPER([Manufacturer])), NULL)

Top Label Tooltips”  =

IIF([Top 1 in Sales?], ”

TOP SELLING MANUFACTURER WITHIN SUB-CATEGORY”, NULL)

En este punto terminamos con la definición de nuevas variables y pasamos a enfrentarnos al desafío principal de este reto:

La creación de la gráfica

¿Cómo manejas dos colores para un mismo círculo?

¿Cómo colocas el nombre de la Sub-Categoría al inicio del eje de las x?

Wow! Tu cabeza te dice que simplemente es imposible y/o tú no sabes por dónde empezar. No te preocupes, te daré las primeras pistas: No se trata de una sola gráfica y una de las gráficas utiliza más de un eje.

Ahora trata de replantear la solución con estas pistas. ¿Mejor?

A continuación comparto los pasos detallados para la creación de las gráficas.

Paso 4: Crear la gráfica principal de tipo círculos

Mover a los estantes:

  • Filter ⬅   “Region” y con el click derecho seleccionar filtro de Contexto.
  • Columns ⬅   “Profit Ratio”
  • Rows ⬅   “UPPER([Sub-Category])” ordenado “desc” por “Profit Ratio” y
  • Rows ⬅   AVG(1)
  • Detail ⬅   “UPPER([Manufacturer])”
  • Color ⬅   “Profit Ratio” utilizar paleta de colores: CB_RdYIGn
  • Size ⬅   “SUM(Sales)”
  • Tooltips ⬅   “Top Label Tooltips”        

Para “Sub-Category” y “Manufacturer” se requiere que los nombres aparezcan con mayúsculas, para lo cual se pueden crear nuevos campos con su definición en mayúsculas o directamente se captura la fórmula en el estante.  Para este ejercicio utilicé la segunda opción.

Se deberá seleccionar una opción “Border” en la tarjeta “Color”.

Ninguno de los encabezados de los campos del estante de Rows se desplegarán, para lo cuál, se deben seleccionar con el click derecho, para des-seleccionar la opción de mostrar “Headers”.

Se debe editar el eje de AVG(1) para ajustarlo entre un rango de 1 a 2, lo cuál dará el efecto de cortar el círculo a la mitad, logrando así el efecto de un semicírculo superior.

Picture_02El campo “Top Label Tooltips” se editará para seleccionar que se calculará por dimensiones específicas: UPPER([Sub-Category]) y UPPER([Manufacturer]) y reinicializando cada UPPER([Sub-Category])

Picture_03

Paso 5: Crear un eje adicional en la gráfica

La definición de los estantes del segundo eje es:

  • Rows ⬅   AVG(1)
  • Detail ⬅   “UPPER([Manufacturer])”
  • Color ⬅   “Top in Sales? Color negro para True y color blanco para False
  • Size ⬅   “SUM(Sales)”
  • Tooltips ⬅   “Top Label Tooltips”
  • Label ⬅   “Top Label Display”

Se deberá seleccionar una opción “Border” en la tarjeta “Color”.

En el segundo eje, AVG(1), se utilizarán dos trucos:

  • Al igual que en el primer eje, el segundo eje se editará y ajustará el eje entre un rango de 1 a 2, lo cuál dará el efecto de cortar el círculo a la mitad, teniendo un nuevo semicírculo.
  • El segundo paso es invertir ese semicírculo para lograr el semicírculo inferior y esto se logra ajustando el eje con la opción “Reversed”.

Picture_04Los cálculos de tabla “Top 1 in Sales?”, “Top Label Tooltips” y “Top Label Display” se editarán para seleccionar que se calcularán por dimensiones especificas: UPPER([Sub-Category]) y UPPER([Manufacturer]) y reinicializando cada UPPER([Sub-Category]).

Ninguno de los encabezados de los campos del estante de Rows se desplegarán, para lo cuál, se deben seleccionar con el click derecho, para des-seleccionar la opción de mostrar “Headers”.

Como se utilizará más de una gráfica para lograr el diseño completo, se debe editar el formato del worksheet y en la opción de sombreado del worksheet indicar la opción “None” para dar el efecto transparente.

También se deberá ajustar el sombreado a nivel renglón, para que se intercale un renglón sin sombreado y un renglón con sombreado.

Picture_05 b

Paso 6: Crear la segunda gráfica con los nombres de las Sub-Categorías

Mover a los estantes:

  • Filter ⬅   “Region” y con el click derecho identificarlo como filtro de Contexto.
  • Rows ⬅   “UPPER([Sub-Category])” ordenado “desc” por “Profit Ratio”.

Se deselecciona la opción mostrar “Headers”.

  • Label ⬅   “UPPER([Sub-Category])”.

En esta segunda gráfica también se debe dar el efecto de transparencia, al utilizar la opción “None” en el sombreado del worksheet.

Paso 5: Unir ambas gráficas en el dashboard.

Aprovechando la funcionalidad de gráficas trasparentes es posible sobreponer gráficas, para simular que se trata de una sola. Para esto, utilice la opción de elementos flotantes dentro del dashboard y ajuste la posición (x, y) y el tamaño de cada gráfica a fin de crear el efecto de una sola gráfica.

Listo!

Link a Tableau Public

Picture_01Para concluir:

Uno de los principales desafíos de esta semana, fue lograr crear círculos con definiciones de colores diferentes para el semicírculo superior y el semicírculo inferior.

La clave para la solución fue simular el círculo, uniendo dos semicírculos.

Los semicírculos provienen de gráficas de círculos, en donde se ajusta la definición de sus ejes para crear el efecto deseado:

  • Ajustar el eje con rangos truncados, para visualizar solo la mitad de cada círculo, es decir, un semicírculo.
  • Ajustar uno de los dos ejes a utilizar la escala invertida, con la finalidad de invertir el semicírculo y simular que se trata de la parte inferior de cada círculo.

Muchas gracias y si tiene alguna pregunta sobre el post, no dudes en ponerte en contacto conmigo en Twitter (@rosariogaunag)

¡Saludos!

Rosario Gauna

 

Advertisements