
Diego Lazo Rojas
PreguntaHola! ¿ cómo podría graficar la campana de Gauss sobre un histograma? Muchas gracias

Jose Luis Higuera Caraveo
Te comparo mi solución para dibujar la distribución normal de un conjunto de datos en matplotlib.
Primero, dibujo el histograma, pero este tiene que estar en la escala correcta, esto devido a que los valores de probabilidad de la distribución normal tienen rango de 0 a 1. Para lograrlo aplico el parámetro density=True
plt.hist(data, bins=10, histtype='bar', density=True, alpha=0.2)
Ahora, tenemos que obtener la distribución normal de los datos, para ello, uso la librería de scipy, en su modulo stats encontramos a norm. Este método recibe dos parámetros, loc y scale. Loc es la media de los datos, scale es la desviación estandar.
from scipy.stats import norm func = norm(loc=np.mean(data), scale=np.std(data))
Ya que tenemos nuestra distribución podemos agregar al histograma la curva de campana. Esto lo consigo ordenando los datos, y a esos datos ordenamos aplicarle la función pdf (probability density function) de la distribución normal que definimos anteriormente.
plt.hist(data,bins=10,histtype='bar', density=True, alpha=0.2) plt.plot(sorted(data), func.pdf(sorted(data)), 'r-', lw=2, alpha=0.8) plt.show()
Se obteiene un resultado como el que sigue:

Alarcon7a
Un gráfico line aplicado en la misma figura del histograma, también podrías usar seaborn para ello, es muy sencillo y lo ves en las siguientes clases