رفتن به محتوا

میله‌های خطا با pgfplots

error bars/.cd, y dir=both, y explicit را به گزینه‌های \addplot اضافه کنید و خطای هر نقطه را پس از آن به صورت +- (0, error) بنویسید، یا خطاها را با y error= از یک ستون جدول بخوانید.

خطاهایی که همراه نقطه‌ها نوشته می‌شوند

میله‌های خطا برای هر \addplot جداگانه روشن می‌شوند. کلیدهای پس از error bars/.cd می‌گویند در چه جهتی کشیده شوند و مقدارها از کجا بیایند. با y explicit، هر نقطه خطای خودش را پس از +- دارد.

خطاهای متقارن y از مختصات

\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) عدد اول خطای x است و عدد دوم خطای y. فقط جهت‌هایی که روشن کرده‌اید کشیده می‌شوند.

خطاها از ستون یک جدول

وقتی داده جدول است، ستون خطا را با y error= نام ببرید. همین با یک فایل هم کار می‌کند، مثلاً table[x=t, y=v, y error=dv, col sep=comma] {data.csv}.

خطاهای y که از یک ستون خوانده می‌شوند

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

خطاهای یک‌طرفه و ثابت

y dir=plus یا y dir=minus فقط نیمهٔ بالایی یا پایینی را می‌کشد. به جای مقدارهای صریح، y fixed=0.2 به همهٔ نقطه‌ها خطایی یکسان می‌دهد و y fixed relative=0.1 خطایی برابر 10% مقدار هر نقطه.

فقط خطاهای بالایی، و یک خطای نسبی

\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: فقط خطاهای بالایی، و یک خطای نسبی

خطاهای متفاوت در بالا و پایین

برای خطای بالایی += (0, up) و برای خطای پایینی -= (0, down) بنویسید.

خطاهای نامتقارن

\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 و y

هر دو جهت را با x dir و y dir روشن کنید. error bar style به میله‌ها سبک می‌دهد.

میله‌های خطا در هر دو جهت

\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

برای عدم قطعیتی پیوسته، ناحیهٔ بین یک منحنی بالایی و یک منحنی پایینی را سایه بزنید. کتابخانهٔ fillbetween را بارگذاری کنید، هر دو منحنی را با name path نام‌گذاری کنید و بین آن‌ها را پر کنید.

نواری سایه‌دار دور یک منحنی

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

گزینه‌های میلهٔ خطا

گزینهکارشدر Scissor LaTeX
y dir=both، plus، minus، noneکدام نیمهٔ میله کشیده شود (همچنین x dir)کار می‌کند
y explicit، x explicitخطا از +- در مختصات یا از یک ستون جدولکار می‌کند
y error=col، x error=col، y error index=nستون جدولی که خطاها را داردکار می‌کند
+= (ex,ey)، -= (ex,ey)خطاهای بالایی و پایینی جداگانه در مختصاتکار می‌کند
y fixed=v، y fixed relative=rخطایی یکسان برای همهٔ نقطه‌هاکار می‌کند
error bar style={..}رنگ و ضخامت خط میله‌هاکار می‌کند
error mark=..، error mark options={..}کلاهک در هر سرپذیرفته می‌شود، اما کلاهک همیشه یک خط کوتاه است

تفاوت‌ها با یک نصب TeX

راهنمای pgfplots میله‌های خطا را در بخش مربوط به آن‌ها توضیح می‌دهد: ctan.org/pkg/pgfplots.

همچنین ببینید: نمودارهای میله‌ای، نمودارهای پراکندگی و داده از CSV.

پرسش و پاسخ

چطور در pgfplots میلهٔ خطا اضافه کنم؟

بنویسید \addplot+[error bars/.cd, y dir=both, y explicit] coordinates {(1,2) +- (0,0.3) ...};. عدد دوم پس از +- خطای y است.

چطور میله‌های خطا را از یک فایل CSV بخوانم؟

y error=column را به گزینه‌های جدول اضافه کنید، همراه با y explicit در گزینه‌های میلهٔ خطا: table[x=a, y=b, y error=c, col sep=comma] {file.csv}.

آیا میله‌های خطا می‌توانند در بالا و پایین متفاوت باشند؟

بله. به جای +- پس از نقطه += (0, up) و -= (0, down) بنویسید، مثل (1,2) += (0,0.5) -= (0,0.1).

هر مثال این صفحه هنگام ساخت سایت با Scissor LaTeX حروف‌چینی می‌شود. آخرین به‌روزرسانی: 2026-11-07.