Python エラーバー

Ammar Ali 2022年3月25日
Python エラーバー

このチュートリアルでは、Python の Matplotliberrorbar() 関数を使用してエラーバーを使用してデータをプロットする方法について説明します。

Python エラーバー

一部の値は 100%正確ではなく、抵抗の値などのエラーが含まれています。抵抗値には、10%のような許容誤差または誤差があります。つまり、値は正確ではありませんが、10%の範囲で変化する可能性があります。

Python のエラーバーは、値に存在するエラーを示すために、プロット内のデータポイントとともにエラーをプロットするために使用されます。Python でエラーバー付きのデータをプロットするには、Matplotliberrorbar() 関数を使用できます。

たとえば、いくつかのランダムデータをプロットし、各値にエラーバーを追加してみましょう。以下のコードを参照してください。

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]

plt.errorbar(x_values, y_values, yerr=y_error)
plt.show()

出力:

エラーバー付きのデータ

この例では、y 軸にエラーを追加しただけですが、x 軸にエラーを追加することもできます。上記の出力のバーは垂直ですが、x 軸エラーの場合、バーは水平になります。

各バーの長さは、指定されたエラーの値によって異なります。エラーベクトルのサイズは、データベクトルと同じである必要があります。

errorbar() 関数には引数 fmt があり、線のスタイル、色、マーカー記号など、プロットで使用される線のプロパティを設定できます。

デフォルトの線のスタイルは実線ですが、破線 -、一点鎖線 -.、または点線:に変更できます。デフォルトの色は青ですが、赤の場合は r のような色の最初の文字を使用して、緑や赤のような任意の色に変更できます。

円の場合は o、ひし形の場合は d、星のマーカーの場合は*などのマーカー記号を追加することもできます。ms 引数を使用して、マーカーのサイズを変更できます。

たとえば、上記のプロットに x 軸エラーを追加し、線のスタイル、色、およびマーカーを変更してみましょう。以下のコードを参照してください。

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]
x_error = [0.5, 0.5, 0.5, 0.5]

plt.errorbar(x_values, y_values, yerr=y_error, xerr=x_error, fmt="--ro", ms=10)
plt.show()

出力:

エラーバーのラインプロパティの変更

markeredgecolor または mec パラメーターを使用したマーカーエッジの色、markerfacecolor または mfc を使用したマーカー面の色、markeredgewidth または mew 引数を使用したマーカーエッジ幅など、他のマーカープロパティを変更することもできます。

エラーバーの色、線幅、キャップサイズ、キャップの厚さなどのエラーバーのプロパティを変更することもできます。デフォルトでは、エラーバーの色は線のスタイルの色と同じですが、色名または色名の最初の文字を使用し、ecolor パラメーターを使用して、任意の色に変更できます。

デフォルトでは、エラーバーの幅は線のスタイルの幅と同じになりますが、elinewidth パラメータを使用して任意の幅に変更できます。デフォルトでは、ケープのサイズと厚さはゼロですが、capsizecapthick パラメーターを使用して任意の浮動小数点値に変更できます。

たとえば、上記のエラーバーのプロパティを変更してみましょう。以下のコードを参照してください。

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]
x_error = [0.5, 0.5, 0.5, 0.5]

plt.errorbar(
    x_values,
    y_values,
    yerr=y_error,
    xerr=x_error,
    fmt="--ro",
    ms=10,
    ecolor="g",
    elinewidth=3,
    capsize=10,
    capthick=3,
)
plt.show()

出力:

エラーバーのプロパティの変更

errorevery 引数を使用して、特定のポイントのエラーバーを非表示にすることもできます。デフォルトでは、この引数の値は 1 ですが、整数値に変更できます。たとえば、errorevery 引数の値を 2 に設定すると、エラーバーがポイントの半分に表示されます。

著者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook