Python 錯誤欄
本教程將討論使用 Python 中 Matplotlib
的 errorbar()
函式繪製帶有誤差線的資料。
Python 錯誤欄
有些值不是 100% 準確,它們包含一些誤差,例如電阻器的值。電阻值具有 10% 的容差或誤差。這意味著該值不準確,但它可以在 10% 的範圍內變化。
Python 中的誤差線用於繪製誤差以及繪圖中的資料點,以顯示值中存在的誤差。要在 Python 中繪製帶有誤差線的資料,我們可以使用 Matplotlib
的 errorbar()
函式。
例如,讓我們繪製一些隨機資料併為每個值新增誤差線。請參閱下面的程式碼。
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
引數更改其他標記屬性,例如使用 markeredgecolor
或 mec
引數更改標記面顏色,使用 markerfacecolor
或 mfc
使用 markeredgewidth
或 mew
引數更改標記邊緣寬度.
我們還可以更改誤差線的屬性,例如誤差線的顏色、線寬、大寫大小和大寫厚度。預設情況下,誤差線的顏色將與線條樣式的顏色相同,但我們可以使用顏色名稱或顏色名稱的第一個字母並使用 ecolor
引數將其更改為任何顏色。
預設情況下,誤差線的寬度將與線條樣式的寬度相同,但我們可以使用 elinewidth
引數將其更改為任意寬度。預設情況下,cape 大小和厚度為零,但我們可以使用 capsize
和 capthick
引數將其更改為任何浮點值。
例如,讓我們更改上面提到的誤差線的屬性。請參閱下面的程式碼。
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,誤差線將出現在一半的點上。