Visualiza cambios de ranking con un grafico bump

6.7.3

Visualiza cambios de ranking con un grafico bump

Actualizado 2020-02-26 Lectura 1 min

Este grafico bump conecta las posiciones de ventas por trimestre. El truco es invertir el eje para que los rangos altos queden arriba.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import numpy as np
import matplotlib.pyplot as plt

quarters = ["Q1", "Q2", "Q3", "Q4"]
brands = ["Alpha", "Bravo", "Charlie", "Delta", "Echo"]
ranks = np.array(
    [
        [1, 2, 3, 3],
        [3, 1, 1, 2],
        [2, 3, 2, 1],
        [4, 4, 5, 4],
        [5, 5, 4, 5],
    ]
)

fig, ax = plt.subplots(figsize=(7, 4))

for brand, rank in zip(brands, ranks):
    ax.plot(quarters, rank, marker="o", linewidth=2, label=brand)

ax.set_ylim(5.5, 0.5)
ax.set_ylabel("Ranking")
ax.set_title("Ranking de ventas por marca")
ax.grid(axis="y", alpha=0.2)
ax.legend(loc="upper right", bbox_to_anchor=(1.15, 1))

fig.tight_layout()

plt.show()

Invertir el eje facilita leer los cambios de ranking.

Consejos de lectura #

  • Como un numero menor indica mejor posicion, invertir el eje hace la lectura mas intuitiva.
  • Usa colores y marcadores para distinguir marcas, y coloca la leyenda a la derecha para evitar solapamientos.
  • Si necesitas destacar una marca, aumenta el grosor o ajusta el color.