Pythonでは、分布のモデルの密度のパラメータを推定し、分布のヒストグラムの上に密度関数をプロットしたいと思います。 Rでは、オプションprop=TRUE
を使用するのと同様です。ヒストグラムの上に密度関数をプロットする
import numpy as np
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt
# initialization of the list "data"
# estimation of the parameter, in my case, mean and variance of a normal distribution
plt.hist(data, bins="auto") # data is the list of data
# here I would like to draw the density above the histogram
plt.show()
私は最も厄介な部分は、それをフィットさせることです。
編集:私はこの最初の答えに応じて試してみました:
mean = np.mean(logdata)
var = np.var(logdata)
std = np.sqrt(var) # standard deviation, used by numpy as a replacement of the variance
plt.hist(logdata, bins="auto", alpha=0.5, label="données empiriques")
x = np.linspace(min(logdata), max(logdata), 100)
plt.plot(x, mlab.normpdf(x, mean, std))
plt.xlabel("log(taille des fichiers)")
plt.ylabel("nombre de fichiers")
plt.legend(loc='upper right')
plt.grid(True)
plt.show()
しかし、それはここでは、グラフに合わせて、それがどのように見えるかではありません。
**編集2 * *ヒストグラム機能のオプションnormed=True
で動作します。
を使用する必要があります。 Figureをどのように見せたいかに関するスクリーンショット/詳細情報を追加できますか?いつものように、[最小、完全、そして実証可能な例](http://stackoverflow.com/help/mcve)は、良い答えを得るチャンスを大いに助けます。 – DavidG
ここにあります。はい、あなたは1000の説明よりも良い例が正しいです!しかし、まだ私は私の説明がかなり明確だと思った... –
'normed = True'を使いたくない場合、私は解決策を追加しました。 – DavidG