[解決済み] 棒の高さの和が1になるようにヒストグラムを描け(確率)
2023-02-14 13:47:17
質問
を使ってベクトルから正規化ヒストグラムをプロットしたいと思います。
matplotlib
. 私は以下を試しました。
plt.hist(myarray, normed=True)
と同様に
plt.hist(myarray, normed=1)
というオプションがありますが、どちらのオプションもヒストグラムのバーの高さの合計が1になるような [0, 1] からの y 軸を生成しません。
どのように解決するのですか?
より完全な動作例(この場合は非動作例)を提示していただければ、より参考になると思います。
私は以下を試しました。
import numpy as np
import matplotlib.pyplot as plt
x = np.random.randn(1000)
fig = plt.figure()
ax = fig.add_subplot(111)
n, bins, rectangles = ax.hist(x, 50, density=True)
fig.canvas.draw()
plt.show()
これは確かにバーチャートヒストグラムを生成し、Y軸は
[0,1]
.
さらに
hist
のドキュメントにあるように (つまり
ax.hist?
から
ipython
のように)、合計も問題ないと思います。
*normed*:
If *True*, the first element of the return tuple will
be the counts normalized to form a probability density, i.e.,
``n/(len(x)*dbin)``. In a probability density, the integral of
the histogram should be 1; you can verify that with a
trapezoidal integration of the probability density function::
pdf, bins, patches = ax.hist(...)
print np.sum(pdf * np.diff(bins))
上記のコマンドの後、これを試してみる。
np.sum(n * np.diff(bins))
の返り値を得る。
1.0
という期待通りの結果が得られます。 覚えておいてほしいのは
normed=True
は各バーでの値の合計が単一になることを意味するのではなく、むしろバー上の積分が単一になることを意味します。 私の場合
np.sum(n)
はおよそ
7.2767
.
関連
-
[解決済み] matplotlib で密度プロットを作成するには?
-
[解決済み】matplotlibで2つのヒストグラムを1つのグラフにプロットする
-
[解決済み】すべてのサブプロットに1つのカラーバーを表示させる方法
-
[解決済み] Matplotlib - X 軸のラベルを下方向に移動し、X 軸のティックを移動しない
-
[解決済み] Flaskで1時間ごとに関数を実行するようにスケジュールするには?
-
[解決済み] PyQtアプリケーションのスレッド化。QtスレッドとPythonスレッドのどちらを使うか?
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
-
[解決済み] Python 言語を決定するには?
-
[解決済み] Pythonの文字列書式をリストで使う
-
[解決済み] pipの依存性/必要条件をリストアップする方法はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] matplotlib/pandas で、ヒストグラムの Y 軸をパーセンテージにするパラメータはありますか?
-
[解決済み] 2つの線分が交差しているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Pythonのマルチプロセッシングプールimap_unorderedの呼び出しの進捗を表示しますか?
-
[解決済み] Djangoで2つの日付の間を選択する
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] Django Rest Framework ファイルアップロード
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] PyMongoで.sortを使用する
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] あるオブジェクトが数であるかどうかを確認する、最もパイソン的な方法は何でしょうか?