Bar ralat dengan pgfplots
Tambah error bars/.cd, y dir=both, y explicit pada pilihan \addplot dan tulis setiap ralat selepas titiknya sebagai +- (0, error), atau baca ralat daripada lajur jadual dengan y error=.
Ralat yang ditulis bersama titik
Bar ralat dihidupkan bagi setiap \addplot. Kekunci selepas error bars/.cd menyatakan arah untuk melukisnya dan dari mana nilainya datang. Dengan y explicit, setiap titik membawa ralatnya sendiri selepas +-.
Ralat y simetri daripada koordinat
\begin{tikzpicture}
\begin{axis}[xlabel={Length (m)}, ylabel={Period (s)}]
\addplot+[error bars/.cd, y dir=both, y explicit]
coordinates {
(0.2,0.90) +- (0,0.05)
(0.4,1.27) +- (0,0.04)
(0.6,1.55) +- (0,0.06)
(0.8,1.80) +- (0,0.05)
(1.0,2.01) +- (0,0.07)
};
\end{axis}
\end{tikzpicture}Dalam +- (ex, ey) nombor pertama ialah ralat x dan nombor kedua ralat y. Hanya arah yang anda hidupkan dilukis.
Ralat daripada lajur jadual
Apabila data berupa jadual, namakan lajur ralat dengan y error=. Cara yang sama berfungsi dengan fail, contohnya table[x=t, y=v, y error=dv, col sep=comma] {data.csv}.
Ralat y dibaca daripada lajur
\begin{tikzpicture}
\begin{axis}[xlabel={Dose}, ylabel={Response}, ymin=0]
\addplot+[only marks, error bars/.cd, y dir=both, y explicit]
table[x=dose, y=mean, y error=sd] {
dose mean sd
1 2.1 0.3
2 3.4 0.4
4 5.0 0.6
8 6.2 0.5
};
\end{axis}
\end{tikzpicture}Ralat sehala dan tetap
y dir=plus atau y dir=minus hanya melukis separuh atas atau separuh bawah. Selain nilai eksplisit, y fixed=0.2 memberikan setiap titik ralat yang sama, dan y fixed relative=0.1 ralat sebanyak 10% daripada nilainya.
Ralat atas sahaja, dan ralat relatif
\begin{tikzpicture}
\begin{axis}[ymin=0, legend pos=north west]
\addplot+[error bars/.cd, y dir=plus, y fixed=0.4]
coordinates {(1,2) (2,3) (3,3.5) (4,4.4)};
\addplot+[error bars/.cd, y dir=both, y fixed relative=0.1]
coordinates {(1,1) (2,1.6) (3,2.2) (4,2.5)};
\legend{fixed $\pm 0.4$ (upper), relative 10\%}
\end{axis}
\end{tikzpicture}Ralat berbeza di atas dan di bawah
Tulis += (0, up) untuk ralat atas dan -= (0, down) untuk ralat bawah.
Ralat tidak simetri
\begin{tikzpicture}
\begin{axis}[width=7cm, height=5cm, xmin=0.5, xmax=3.5]
\addplot+[only marks, error bars/.cd, y dir=both, y explicit]
coordinates {
(1,2.0) += (0,0.5) -= (0,0.1)
(2,3.0) += (0,0.2) -= (0,0.6)
(3,2.6) += (0,0.3) -= (0,0.3)
};
\end{axis}
\end{tikzpicture}Ralat dalam x dan y
Hidupkan kedua-dua arah dengan x dir dan y dir. error bar style menggayakan bar.
Bar ralat dalam kedua-dua arah
\begin{tikzpicture}
\begin{axis}[xlabel=$x$, ylabel=$y$]
\addplot+[only marks, mark=square*,
error bars/.cd,
x dir=both, x explicit,
y dir=both, y explicit,
error bar style={red, thick}]
coordinates {
(1.0,1.2) +- (0.15,0.20)
(2.0,2.1) +- (0.20,0.15)
(3.0,2.8) +- (0.10,0.30)
};
\end{axis}
\end{tikzpicture}Jalur ralat dengan fill between
Untuk ketakpastian yang berterusan, lorekkan kawasan antara lengkung atas dan lengkung bawah. Muatkan pustaka fillbetween, namakan kedua-dua lengkung dengan name path, dan isikan ruang antaranya.
Jalur berlorek di sekeliling lengkung
\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{fillbetween}
\begin{document}
\begin{tikzpicture}
\begin{axis}[domain=0:4, samples=40, xlabel=$t$, ylabel=$y$]
\addplot[name path=upper, draw=none] {exp(-0.5*x) + 0.1 + 0.05*x};
\addplot[name path=lower, draw=none] {exp(-0.5*x) - 0.1 - 0.05*x};
\addplot[blue!20] fill between[of=upper and lower];
\addplot[blue, thick] {exp(-0.5*x)};
\end{axis}
\end{tikzpicture}
\end{document}Pilihan bar ralat
| Pilihan | Fungsinya | Dalam Scissor LaTeX |
|---|---|---|
y dir=both, plus, minus, none | separuh bar yang mana hendak dilukis (juga x dir) | Berfungsi |
y explicit, x explicit | ralat daripada +- dalam koordinat atau daripada lajur jadual | Berfungsi |
y error=col, x error=col, y error index=n | lajur jadual yang mengandungi ralat | Berfungsi |
+= (ex,ey), -= (ex,ey) | ralat atas dan bawah yang berasingan dalam koordinat | Berfungsi |
y fixed=v, y fixed relative=r | ralat yang sama untuk setiap titik | Berfungsi |
error bar style={..} | warna dan lebar garis bar | Berfungsi |
error mark=.., error mark options={..} | penutup pada setiap hujung | Diterima, tetapi penutup sentiasa garis pendek |
Perbezaan dengan pemasangan TeX
Manual pgfplots menerangkan bar ralat dalam bahagiannya tentang bar ralat: ctan.org/pkg/pgfplots.
Lihat juga Carta bar, Plot serakan dan Data daripada CSV.
Soalan dan jawapan
Bagaimanakah cara menambah bar ralat dalam pgfplots?
Tulis \addplot+[error bars/.cd, y dir=both, y explicit] coordinates {(1,2) +- (0,0.3) ...};. Nombor kedua selepas +- ialah ralat y.
Bagaimanakah cara membaca bar ralat daripada fail CSV?
Tambah y error=column pada pilihan jadual, bersama y explicit dalam pilihan bar ralat: table[x=a, y=b, y error=c, col sep=comma] {file.csv}.
Bolehkah bar ralat berbeza di atas dan di bawah?
Ya. Tulis += (0, up) dan -= (0, down) selepas titik dan bukannya +-, seperti dalam (1,2) += (0,0.5) -= (0,0.1).
Setiap contoh di halaman ini disusun atur oleh Scissor LaTeX semasa laman dibina. Kali terakhir dikemas kini 2026-11-07.