エラーバーと不確かさ
ax.errorbar で測定の不確かさを、fill_between で塗りつぶしの帯を表示します。
はじめに
測定値が完全に正確であることはありません。エラーバーは本当の値が測定値からどれくらい離れている可能性があるかを示し、本当の差なのかノイズなのかを読み手が判断できるようにします。塗りつぶしの帯は線全体について同じことを示します。
yerr は各点の上下の誤差の大きさ、fmt="o-" は点とそれをつなぐ線、capsize はバーの両端の小さなキャップを指定します。fill_between は effect - error と effect + error の間を塗りつぶします。2つの帯が大きく重なっているところでは、その差はノイズにすぎないかもしれません。
インタラクティブ ビジュアライザー
誤差を大きくしたり小さくしたりし、キャップの大きさを変え、塗りつぶしの帯をオン・オフしてみましょう。
実行できる Matplotlib の例
Matplotlib
main.py
import matplotlib.pyplot as plt
import numpy as np
doses = np.array([0, 10, 20, 40, 80])
effect = np.array([2.0, 4.1, 6.3, 8.2, 9.1])
error = np.array([0.6, 0.8, 0.7, 1.1, 1.4])
fig, ax = plt.subplots(figsize=(7, 4))
ax.errorbar(doses, effect, yerr=error, fmt="o-", capsize=4)
ax.fill_between(doses, effect - error, effect + error, alpha=0.2)
ax.set_xlabel("Dose (mg)")
ax.set_ylabel("Effect")
ax.set_title("Mean effect with error bars")
plt.show()
