Cómo trazar un histograma para la lista de datos en Matplotlib
Podemos usar el método plt.hist()
para graficar histogramas a partir de una lista de datos.
Sintaxis del método Maplotlib hist()
matplotlib.pyplot.hist(x,
bins=None,
range=None,
density=False,
weights=None,
cumulative=False,
bottom=None,
histtype='bar',
align='mid',
orientation='vertical',
rwidth=None,
log=False,
color=None,
label=None,
stacked=False, *,
data=None,
**kwargs)
Ejemplos: Trazar un histograma usando Matplotlib de la lista de datos
import matplotlib.pyplot as plt
data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data)
plt.xlabel("Values")
plt.ylabel("Frequency")
plt.title("Histogram")
plt.show()
Resultado:
Aquí, tenemos valores en una lista - data
. Pasamos esta lista al comando plt.hist()
para generar un histograma de la lista de valores. El método plt.hist()
devuelve la frecuencia de los bins, los puntos finales de los bins, y una lista de parches usados para crear el histograma.
En el ejemplo, no hemos establecido el valor del parámetro bins
. Por defecto, el número de bins
es 10, así que el script crea el histograma a partir de la lista de datos con 10 bins.
Además, podemos controlar el número de bins usando el comando bins
mientras hacemos el histograma.
import matplotlib.pyplot as plt
data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20)
plt.xlabel("Values")
plt.ylabel("Frequency")
plt.title("Histogram with 20 bins")
plt.show()
Resultado:
Este proceso muestra el histograma hecho a partir de 20 contenedores, como resultado de dividir por igual todo el rango de los valores de la lista.
Por defecto, el valor del parámetro density
se establece en False
; esto significa que obtenemos la gráfica del conteo exacto de cada recipiente en el histograma. Si queremos hacer la gráfica de las densidades de probabilidad de cada bin en la lista, necesitamos establecer la density
en True
. Si la density
es True
, el área bajo el histograma se integra a 1.
import matplotlib.pyplot as plt
data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20, density=True)
plt.xlabel("Weight")
plt.ylabel("Probability")
plt.title("Histogram with Probability Plot")
plt.show()
Resultado:
Ahora podemos establecer el color del histograma usando el parámetro color
.
import matplotlib.pyplot as plt
data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20, density=True, color="red")
plt.xlabel("Weight")
plt.ylabel("Probability")
plt.title("Red Histogram Plot")
plt.show()
Resultado:
Este método genera el histograma con color rojo.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn