İçeriğe geç

pgfplots ile hata çubukları

\addplot seçeneklerine error bars/.cd, y dir=both, y explicit ekleyin ve her hatayı noktasından sonra +- (0, error) olarak yazın ya da hataları y error= ile bir tablo sütunundan okuyun.

Noktalarla birlikte yazılan hatalar

Hata çubukları her \addplot için ayrı ayrı açılır. error bars/.cd'den sonraki anahtarlar, çubukların hangi yönde çizileceğini ve değerlerin nereden geleceğini söyler. y explicit ile her nokta kendi hatasını +- sonrasında taşır.

Koordinatlardan simetrik y hataları

LaTeXÖnsöz: \usepackage{pgfplots}Düzenleyicide aç (yeni sekmede açılır)
\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}

+- (ex, ey) içinde ilk sayı x hatası, ikincisi y hatasıdır. Yalnızca açtığınız yönler çizilir.

Bir tablo sütunundan hatalar

Veri bir tablo olduğunda hata sütununu y error= ile adlandırın. Aynısı bir dosyayla da çalışır, örneğin table[x=t, y=v, y error=dv, col sep=comma] {data.csv}.

Bir sütundan okunan y hataları

LaTeXÖnsöz: \usepackage{pgfplots}Düzenleyicide aç (yeni sekmede açılır)
\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}

Tek yönlü ve sabit hatalar

y dir=plus veya y dir=minus yalnızca üst ya da alt yarıyı çizer. Açık değerler yerine y fixed=0.2 her noktaya aynı hatayı, y fixed relative=0.1 ise değerinin %10'u kadar bir hata verir.

Yalnızca üst hatalar ve göreli bir hata

LaTeXÖnsöz: \usepackage{pgfplots}Düzenleyicide aç (yeni sekmede açılır)
\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}
Scissor LaTeX tarafından dizildi: Yalnızca üst hatalar ve göreli bir hata

Üstte ve altta farklı hatalar

Üst hata için += (0, up), alt hata için -= (0, down) yazın.

Asimetrik hatalar

LaTeXÖnsöz: \usepackage{pgfplots}Düzenleyicide aç (yeni sekmede açılır)
\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}

x ve y yönünde hatalar

x dir ve y dir ile iki yönü de açın. error bar style çubuklara stil verir.

Her iki yönde hata çubukları

LaTeXÖnsöz: \usepackage{pgfplots}Düzenleyicide aç (yeni sekmede açılır)
\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}

fill between ile hata bantları

Sürekli bir belirsizlik için bir üst ve bir alt eğri arasındaki alanı gölgelendirin. fillbetween kitaplığını yükleyin, iki eğriyi de name path ile adlandırın ve aralarını doldurun.

Bir eğrinin çevresinde gölgeli bir bant

\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}

Hata çubuğu seçenekleri

SeçenekNe yaparScissor LaTeX'te
y dir=both, plus, minus, noneçubuğun hangi yarısının çizileceği (x dir de)Çalışır
y explicit, x explicitkoordinatlardaki +- değerlerinden veya bir tablo sütunundan hatalarÇalışır
y error=col, x error=col, y error index=nhataları içeren tablo sütunuÇalışır
+= (ex,ey), -= (ex,ey)koordinatlarda ayrı üst ve alt hatalarÇalışır
y fixed=v, y fixed relative=rher nokta için aynı hataÇalışır
error bar style={..}çubukların rengi ve çizgi kalınlığıÇalışır
error mark=.., error mark options={..}her uçtaki başlıkKabul edilir, ancak başlık her zaman kısa bir çizgidir

TeX kurulumundan farkları

pgfplots kılavuzu hata çubuklarını kendi bölümünde açıklar: ctan.org/pkg/pgfplots.

Ayrıca bkz. Sütun grafikleri, Saçılım grafikleri ve CSV'den veri.

Sorular ve yanıtlar

pgfplots'ta hata çubukları nasıl eklenir?

\addplot+[error bars/.cd, y dir=both, y explicit] coordinates {(1,2) +- (0,0.3) ...}; yazın. +- sonrasındaki ikinci sayı y hatasıdır.

Hata çubukları bir CSV dosyasından nasıl okunur?

Hata çubuğu seçeneklerindeki y explicit ile birlikte tablo seçeneklerine y error=column ekleyin: table[x=a, y=b, y error=c, col sep=comma] {file.csv}.

Hata çubukları üstte ve altta farklı olabilir mi?

Evet. Noktadan sonra +- yerine += (0, up) ve -= (0, down) yazın, örneğin (1,2) += (0,0.5) -= (0,0.1).

Bu sayfadaki her örnek, site oluşturulurken Scissor LaTeX tarafından dizilir. Son güncelleme: 2026-11-07.