Cómo trazar dos histogramas juntos en Matplotlib
Podríamos trazar dos histogramas en una figura al mismo tiempo. A continuación se muestran los métodos para crear los dos histogramas con y sin barras superpuestas.
Dos histogramas sin barras superpuestas
Códigos de ejemplo de trabajo:
import numpy as np
import matplotlib.pyplot as plt
a = np.random.normal(0, 3, 3000)
b = np.random.normal(2, 4, 2000)
bins = np.linspace(-10, 10, 20)
plt.hist([a, b], bins, label=['a', 'b'])
plt.legend(loc='upper left')
plt.show()
Dos histogramas con barras superpuestas
Códigos de ejemplo de trabajo:
import numpy as np
import matplotlib.pyplot as plt
a = np.random.normal(0, 3, 1000)
b = np.random.normal(2, 4, 900)
bins = np.linspace(-10, 10, 50)
plt.hist(a, bins, alpha = 0.5, label='a')
plt.hist(b, bins, alpha = 0.5, label='b')
plt.legend(loc='upper left')
plt.show()
Cuando llamamos plt.hist
dos veces para trazar los histogramas individualmente, los dos histogramas tendrán las barras superpuestas como se pudo ver arriba.
La propiedad alpha
especifica la transparencia del gráfico. 0.0
es transparente y 1.0
es opaco.
Cuando alpha
se establece en 0.5 para ambos histogramas, el área superpuesta muestra el color combinado. Pero si alpha
es 0.0
, el valor por defecto, la barra superpuesta sólo muestra el color del valor más alto entre dos histogramas y el otro color está oculto, como se muestra a continuación.