ヒストグラム

Python の Matplotlib のデフォルトのヒストグラムは,かっこわるい。

import matplotlib.pyplot as plt
import numpy as np

rng = np.random.default_rng()
x = rng.random(1000)
plt.hist(x)
ヒストグラム1

R 風に描くには,次のようにする:

plt.hist(x, color="lightgray", edgecolor="black")
ヒストグラム2

seaborn 風(やや ggplot2 風)に描くには,次のようにする:

import seaborn as sns

sns.set()
plt.hist(x)
ヒストグラム3

オプション density=True で縦軸が個数でなく密度になる。orientation='horizontal' で横向きになる。

例えば bins=50 で,だいたい50分割になる。また,例えば bins=[0,1,2,3,4] のように分割点を指定できる。この場合,区間は左閉区間 [0,1),[1,2),[2,3),[3,4] になる。一番右が閉区間となるのに注意。左が閉じた区間になるのは,R のデフォルトとは逆で,R ではオプション right=FALSE を付けると plt.hist() と同じになる。ちなみに Excel の「グラフ」メニューに加わった「ヒストグラム」も左開区間にしかできないようで,悩ましい。


Last modified: