Matplotlib Histograms

Matplotlib Logo
Índice de los temas



Histogram

📊 Un **histograma** es una representación gráfica de la distribución de datos numéricos. A diferencia de los gráficos de barras, que comparan valores entre diferentes categorías, un histograma muestra la frecuencia con la que ocurren los valores dentro de un conjunto de datos continuo.

La idea principal detrás de un histograma es **dividir el rango de los datos en intervalos** (también conocidos como "bins" o "clases") y luego **contar cuántos valores caen dentro de cada intervalo**. La altura de cada barra en el histograma representa esta frecuencia o el número de datos en ese intervalo.

Los histogramas son herramientas poderosas para:

  • **Visualizar la forma de la distribución de los datos:** ¿Es simétrica, sesgada hacia la izquierda o la derecha, tiene múltiples picos?
  • **Identificar valores atípicos (outliers):** Barras aisladas en los extremos del histograma pueden indicar valores inusuales.
  • **Evaluar la dispersión de los datos:** ¿Los valores están muy concentrados en un rango pequeño o están muy dispersos?
  • **Comparar distribuciones:** Se pueden superponer histogramas de diferentes conjuntos de datos para comparar sus distribuciones.

En resumen, un histograma te ofrece una visión general de la distribución de tus datos numéricos, permitiéndote entender mejor sus características y patrones.

📊 Ejemplo Visual Interactivo (Conceptual)

👆 Este gráfico conceptual generado con JavaScript ilustra cómo un conjunto de datos numéricos se divide en intervalos (bins) y cómo la altura de las barras representa la frecuencia de los valores en cada intervalo.

Create Histogram

🛠️ Para **crear un histograma** en Matplotlib, se utiliza la función `plt.hist(x, bins)`, donde:

  • `x`: Es un array o una secuencia de datos numéricos que deseas analizar y visualizar su distribución.
  • `bins` (opcional): Especifica el número de intervalos (bins) en los que se dividirán los datos. Puede ser un entero (el número de bins), una secuencia que define los bordes de los bins, o una cadena con un nombre de regla para calcular el número de bins automáticamente (por ejemplo, `'auto'`, `'fd'`, `'doane'`, etc.). Si no se especifica, Matplotlib utilizará un número de bins predeterminado.

La función `plt.hist()` automáticamente calcula la frecuencia de los datos que caen dentro de cada bin y dibuja las barras correspondientes. También devuelve información útil como las frecuencias (el número de elementos en cada bin) y los bordes de los bins.

Puedes personalizar la apariencia del histograma con argumentos adicionales como `color`, `edgecolor`, `alpha`, y `orientation` (para crear histogramas horizontales).

💻 Código de Ejemplo: Creando histogramas en Matplotlib


import matplotlib.pyplot as plt
import numpy as np

# Datos de ejemplo: edades de un grupo de personas
edades = np.random.normal(30, 10, 100) # Genera 100 edades distribuidas normalmente

# Histograma con número de bins especificado
plt.figure(figsize=(8, 6))
plt.hist(edades, bins=10, color='skyblue', edgecolor='black')
plt.xlabel("Edad")
plt.ylabel("Frecuencia")
plt.title("Histograma de Edades (10 bins)")
plt.grid(axis='y', alpha=0.75)
plt.show()

# Histograma con bins definidos por una secuencia
bins_edges = [0, 10, 20, 30, 40, 50, 60]
plt.figure(figsize=(8, 6))
plt.hist(edades, bins=bins_edges, color='lightcoral', edgecolor='black')
plt.xlabel("Edad")
plt.ylabel("Frecuencia")
plt.title("Histograma de Edades (bins definidos)")
plt.grid(axis='y', alpha=0.75)
plt.show()

# Histograma con 'auto' para determinar el número de bins
plt.figure(figsize=(8, 6))
plt.hist(edades, bins='auto', color='lightgreen', edgecolor='black')
plt.xlabel("Edad")
plt.ylabel("Frecuencia")
plt.title("Histograma de Edades (bins='auto')")
plt.grid(axis='y', alpha=0.75)
plt.show()
            

Los ejemplos muestran cómo crear histogramas especificando el número de bins, definiendo los bordes de los bins con una lista y utilizando la opción `'auto'` para que Matplotlib determine el número óptimo de bins.

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript ilustra la creación de un histograma a partir de un conjunto de datos numéricos, mostrando la frecuencia de los valores en diferentes intervalos.




Publicar un comentario

0 Comentarios