Valors idèntics en un gràfic de Pareto
Para incorporar el gráfico de Pareto en el «Informe de Ventas NORTHWIND», que puede encontrar en el apartado de DEMO, me guie por la solución propuesta por Parker Stevens de «BI Elite». No es el único, en la red hay vídeos disponibles con explicaciones para escoger.
La solución propuesta funciona perfectamente, siempre y cuando no existan elementos con el mismo importe. En mi caso, en una de las selecciones, coincidían tres productos con un importe de ventas de 300, tal y como se muestra en el siguiente gráfico :

No acumula importes idénticos
Al coincidir los importes, estos no se acumulan correctamente. En concreto, se acumulan de una sola vez. Esto es así, por la manera que filtramos los productos para acumular sus ventas.
La medida para el cálculo de la línea en el gráfico, es la siguiente :
Repasaré por cada línea la forma en que se llega al cálculo final, para después proponer una modificación que nos devuelva el porcentaje correcto, acumulando las ventas aunque éstas sean idénticas.
Los porcentajes que va dibujando la línea azul no son más que la división de las ventas acumuladas por producto, ordenadas de mayor a menor, por el total de ventas de los productos mostrados. Por tanto, hemos de llegar a dos resultados, el numerador y denominador, expresados en la medida por «VtasAcuProd» y «VentasTotales», respectivamente.
- En las líneas 2 y 3 obtenemos directamente el denominador.
- La línea 4 nos calcula las ventas del producto mostrado en el eje horizontal del gráfico.
- Líneas 5 a 10, creamos una tabla virtual con las ventas de cada uno de los productos.
- Líneas 11 y 12, para cada producto de la tabla creada, seleccionamos aquellos que tengan las ventas igual o mayores, y sumamos sus ventas (obtenemos el numerador).
Aquí tenemos el problema, pues para cada producto con misma venta, obtendrá el mismo valor. Deberemos buscar un criterio que permita diferenciarlos
- Finalmente, en la línea 13 hacemos la división para aquellos productos con venta.
La solución propuesta
La medida es una modificación de la anterior, la copio y a continuación repaso el cambio introducido para obtener el numerador correcto.
- Ahora en las líneas 5 a 13, he añadido una nueva columna a la tabla virtual, donde se calcula de nuevo las ventas ya calculadas en la columna anterior, pero añadiendo un número que permita diferenciarlas, en este caso, el ID del producto. La división entre 10mil tiene como objetivo diferenciar el importe sin alterar el orden. Dependerá de cada modelo ajustar este paso al tipo de ID utilizado. Si no hubiera ninguno, podría crearse una columna de índice.
- Líneas 14 a 15 , calculamos cuántos productos existen con misma venta que el actual.
- Líneas 16 a 20. Añadimos una nueva columna a nuestra tabla virtual «SummTablaProd», que utilizaremos para filtrar las ventas ordenadas de mayor a menor. Para ello utilizamos la cifra obtenida en el paso anterior.
- Líneas 21 y 22. De la misma manera que calculamos la venta modificada para compararlas en la tabla virtual, también lo hacemos ahora para cada producto actual.
- Líneas 23 y 24. Filtramos con el nuevo criterio y sumamos (importante) a través de la columna que contiene las ventas no modificadas, es decir, las reales. Ya disponemos de nuevo del Numerador.
- Líneas 25 y 26. Podemos dividir el Numerador obtenido en el punto anterior entre el mismo Denominador que teníamos en la medida inicial.
Aplicando la nueva medida hemos resuelto el problema de visualización.
Ahora el gráfico acumula todas las cifras, sean idénticas o no :
Selección con ventas idénticas :
- Cliente : Berglunds snabbköp
- Productos : Röd Kaviar, Maxilaku y Aniseed Syrup