Introducción

Los gráficos de burbuja son una extensión de los gráficos de dispersión que permiten representar tres dimensiones de datos en un solo gráfico. En lugar de usar solo dos ejes (x e y), los gráficos de burbuja utilizan el tamaño de las burbujas para representar una tercera dimensión. Esto los hace especialmente útiles para visualizar conjuntos de datos complejos y descubrir patrones y relaciones entre múltiples variables.

Conceptos Clave

  1. Eje X: Representa la primera variable.
  2. Eje Y: Representa la segunda variable.
  3. Tamaño de la Burbuja: Representa la tercera variable, generalmente una medida cuantitativa.
  4. Color de la Burbuja: Opcionalmente, se puede usar el color para representar una cuarta variable categórica o cuantitativa.

Ejemplo Práctico

Supongamos que tenemos un conjunto de datos que contiene información sobre ventas, ganancias y número de empleados de varias empresas. Queremos visualizar estas tres dimensiones en un gráfico de burbuja.

Datos de Ejemplo

Empresa Ventas (millones) Ganancias (millones) Empleados
Empresa A 50 10 200
Empresa B 70 15 300
Empresa C 30 5 150
Empresa D 90 20 400
Empresa E 60 12 250

Visualización con Python (Matplotlib y Seaborn)

A continuación, se muestra cómo crear un gráfico de burbuja utilizando Python con las bibliotecas Matplotlib y Seaborn.

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd

# Crear un DataFrame con los datos de ejemplo
data = {
    'Empresa': ['Empresa A', 'Empresa B', 'Empresa C', 'Empresa D', 'Empresa E'],
    'Ventas': [50, 70, 30, 90, 60],
    'Ganancias': [10, 15, 5, 20, 12],
    'Empleados': [200, 300, 150, 400, 250]
}
df = pd.DataFrame(data)

# Crear el gráfico de burbuja
plt.figure(figsize=(10, 6))
bubble_plot = sns.scatterplot(data=df, x='Ventas', y='Ganancias', size='Empleados', hue='Empresa', sizes=(100, 1000), legend=False, alpha=0.6)

# Añadir etiquetas y título
plt.title('Gráfico de Burbuja: Ventas vs Ganancias')
plt.xlabel('Ventas (millones)')
plt.ylabel('Ganancias (millones)')

# Mostrar el gráfico
plt.show()

Explicación del Código

  1. Importación de Bibliotecas: Importamos las bibliotecas necesarias: matplotlib.pyplot para la visualización y seaborn para facilitar la creación del gráfico.
  2. Creación del DataFrame: Creamos un DataFrame con los datos de ejemplo utilizando pandas.
  3. Creación del Gráfico de Burbuja: Utilizamos sns.scatterplot para crear el gráfico de burbuja. Los parámetros clave son:
    • data: El DataFrame que contiene los datos.
    • x: La variable para el eje X (Ventas).
    • y: La variable para el eje Y (Ganancias).
    • size: La variable que determina el tamaño de las burbujas (Empleados).
    • hue: La variable que determina el color de las burbujas (Empresa).
    • sizes: El rango de tamaños para las burbujas.
    • legend: Desactivamos la leyenda para simplificar el gráfico.
    • alpha: La transparencia de las burbujas.
  4. Etiquetas y Título: Añadimos etiquetas para los ejes y un título al gráfico.
  5. Mostrar el Gráfico: Utilizamos plt.show() para mostrar el gráfico.

Ejercicio Práctico

Ejercicio

Utilizando el siguiente conjunto de datos, crea un gráfico de burbuja que visualice la relación entre la población, el PIB y el área de varios países.

País Población (millones) PIB (billones) Área (km²)
País A 100 2.5 500000
País B 200 5.0 1000000
País C 150 3.0 750000
País D 250 6.0 1250000
País E 180 4.0 900000

Solución

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd

# Crear un DataFrame con los datos del ejercicio
data = {
    'País': ['País A', 'País B', 'País C', 'País D', 'País E'],
    'Población': [100, 200, 150, 250, 180],
    'PIB': [2.5, 5.0, 3.0, 6.0, 4.0],
    'Área': [500000, 1000000, 750000, 1250000, 900000]
}
df = pd.DataFrame(data)

# Crear el gráfico de burbuja
plt.figure(figsize=(10, 6))
bubble_plot = sns.scatterplot(data=df, x='Población', y='PIB', size='Área', hue='País', sizes=(100, 1000), legend=False, alpha=0.6)

# Añadir etiquetas y título
plt.title('Gráfico de Burbuja: Población vs PIB')
plt.xlabel('Población (millones)')
plt.ylabel('PIB (billones)')

# Mostrar el gráfico
plt.show()

Conclusión

Los gráficos de burbuja son una herramienta poderosa para visualizar datos multidimensionales. Permiten representar tres o más variables en un solo gráfico, facilitando la identificación de patrones y relaciones complejas. En este módulo, hemos aprendido a crear gráficos de burbuja utilizando Python y las bibliotecas Matplotlib y Seaborn, y hemos practicado con un ejercicio práctico para reforzar los conceptos aprendidos.

© Copyright 2024. Todos los derechos reservados