رفتن به محتوا

نمودارهای خطی با pgfplots

برای هر خط یک \addplot درون axis اضافه کنید؛ به هر کدام با گزینه‌هایی مثل red، dashed، thick یا mark=square* سبک بدهید، یا بگذارید فهرست چرخه سبکی برایتان انتخاب کند.

چند خط در یک محور

هر \addplot یک سری اضافه می‌کند. بدون گزینه، سری‌ها به ترتیب سبکشان را از فهرست چرخه می‌گیرند. با \addplot+[...] آن سبک را نگه می‌دارید و یک بخش از آن را تغییر می‌دهید.

سه سری از فهرست چرخهٔ پیش‌فرض

\begin{tikzpicture}
  \begin{axis}[xlabel=Week, ylabel=Orders, legend pos=north west]
    \addplot coordinates {(1,12) (2,18) (3,25) (4,31) (5,44)};
    \addplot coordinates {(1,10) (2,14) (3,15) (4,21) (5,24)};
    \addplot+[dashed] coordinates {(1,5) (2,9) (3,8) (4,12) (5,13)};
    \legend{Erika, Hans, John}
  \end{axis}
\end{tikzpicture}
حروف‌چینی با Scissor LaTeX: سه سری از فهرست چرخهٔ پیش‌فرض

سبک خط و نشانه‌ها

گزینه‌های پس از \addplot رنگ، خط و نشانه‌ها را تعیین می‌کنند. می‌توانید آزادانه آن‌ها را با هم ترکیب کنید.

گزینهمقدارهادر Scissor LaTeX
رنگred، blue!60!black، color=teal، هر نام یا ترکیب رنگ xcolorکار می‌کند
ضخامت خطultra thin، very thin، thin، semithick، thick، very thick، ultra thick، line width=1.5ptکار می‌کند
الگوی خط‌چینsolid، dashed، dotted، densely dashed، loosely dotted، dashdotted، dash pattern=on 4pt off 2ptکار می‌کند
mark=*، o، square*، square، triangle*، triangle، diamond*، diamond، x، +، star، pentagon*، asterisk، otimes*، |، -، noneکار می‌کند
mark size=3ptشعاع نشانهکار می‌کند
mark options={fill=white}سبک فقط برای نشانه‌هاکار می‌کند
mark repeat=2یک نشانه روی هر نقطهٔ دومکار می‌کند
no marks، only marksفقط خط، فقط نشانهکار می‌کند

رنگ‌ها، الگوهای خط‌چین و نشانه‌ها

\begin{tikzpicture}
  \begin{axis}[domain=0:4, samples=9, legend pos=outer north east]
    \addplot[blue, thick, mark=*] {x};
    \addplot[red, dashed, mark=square*, mark options={fill=white}] {x^1.5/2};
    \addplot[teal, densely dotted, very thick] {sqrt(x)};
    \addplot[orange, mark=triangle*, mark size=3pt, only marks] {4 - x};
    \legend{linear, power, root, falling}
  \end{axis}
\end{tikzpicture}
حروف‌چینی با Scissor LaTeX: رنگ‌ها، الگوهای خط‌چین و نشانه‌ها

نشانه‌ها همیشه با خط پیوسته کشیده می‌شوند، حتی روی یک سری خط‌چین، همان‌طور که در pgfplots.

انتخاب فهرست چرخه

فهرست چرخه دنباله‌ای از سبک‌هاست که فرمان‌های سادهٔ \addplot به کار می‌برند. یکی از فهرست‌های داخلی را با cycle list name انتخاب کنید، یا فهرست خودتان را با cycle list بنویسید.

فهرست چرخهٔ black white و یک فهرست سفارشی

\begin{tikzpicture}
  \begin{axis}[cycle list name=black white, width=6.5cm, height=5cm, title={black white}]
    \addplot coordinates {(0,0) (1,1) (2,4)};
    \addplot coordinates {(0,1) (1,2) (2,2)};
    \addplot coordinates {(0,2) (1,0) (2,1)};
  \end{axis}
\end{tikzpicture}
\begin{tikzpicture}
  \begin{axis}[cycle list={{red, thick}, {blue, dashed}}, width=6.5cm, height=5cm, title={custom}]
    \addplot coordinates {(0,0) (1,1) (2,4)};
    \addplot coordinates {(0,1) (1,2) (2,2)};
  \end{axis}
\end{tikzpicture}
حروف‌چینی با Scissor LaTeX: فهرست چرخهٔ black white و یک فهرست سفارشی

نام‌های داخلی که کار می‌کنند: color (پیش‌فرض)، exotic، black white، mark list و linestyles. \pgfplotscreateplotcyclelist{name}{...} در پیش‌درآمد فهرستی تعریف می‌کند که می‌توانید دوباره به کار ببرید.

منحنی‌های نرم و پله‌ها

smooth به جای پاره‌خط‌های راست، منحنی‌ای از میان نقطه‌ها می‌کشد؛ tension (پیش‌فرض 0.55) میزان گردی آن را تنظیم می‌کند. const plot یک تابع پله‌ای می‌کشد که هر مقدار را تا نقطهٔ بعدی نگه می‌دارد.

smooth و const plot

\begin{tikzpicture}
  \begin{axis}[ymin=0, legend pos=north west]
    \addplot+[smooth] coordinates {(0,1) (1,2.5) (2,1.8) (3,3.2) (4,2.4)};
    \addplot+[const plot] coordinates {(0,0.5) (1,1) (2,1.5) (3,1.2) (4,2)};
    \legend{smooth, const plot}
  \end{axis}
\end{tikzpicture}

تابع‌ها بر حسب درجه و رادیان

فرمول‌ها از pgfmath استفاده می‌کنند: + - * / ^، پرانتز، sqrt، exp، ln، abs، min، max، sin، cos، tan و بیشتر، با pi و e به عنوان ثابت. زاویه‌ها بر حسب درجه‌اند، پس رادیان را با deg(x) تبدیل کنید.

sin و cos در یک دوره

\begin{tikzpicture}
  \begin{axis}[domain=0:2*pi, samples=80, xlabel=$t$,
               xtick={0,1.5708,3.1416,4.7124,6.2832},
               xticklabels={$0$,$\frac{\pi}{2}$,$\pi$,$\frac{3\pi}{2}$,$2\pi$},
               legend pos=south west]
    \addplot[blue, thick] {sin(deg(x))};
    \addplot[red, thick, dashed] {cos(deg(x))};
    \legend{$\sin t$, $\cos t$}
  \end{axis}
\end{tikzpicture}

منحنی‌های پارامتری

برای رسم منحنی‌ای که با x(t) و y(t) داده شده، هر دو فرمول را درون پرانتز و جدا شده با ویرگول بنویسید و variable=t را تنظیم کنید.

یک منحنی لیساژو

\begin{tikzpicture}
  \begin{axis}[axis lines=middle, xmin=-1.3, xmax=1.3, ymin=-1.3, ymax=1.3]
    \addplot[purple, thick, domain=0:360, samples=120, variable=t]
      ({cos(t)}, {sin(2*t)});
  \end{axis}
\end{tikzpicture}

گسستگی در یک منحنی

تابعی مثل 1/x به سمت بی‌نهایت می‌رود. restrict y to domain نقطه‌های بیرون از یک بازه را کنار می‌گذارد و unbounded coords=jump خط را همان‌جا می‌شکند، به جای اینکه دو شاخه را به هم وصل کند. هر دو را روی \addplot بگذارید.

1/x با شکستگی در صفر

\begin{tikzpicture}
  \begin{axis}[ymin=-10, ymax=10, axis lines=middle]
    \addplot[blue, thick, domain=-3:3, samples=200,
             restrict y to domain=-10:10, unbounded coords=jump] {1/x};
  \end{axis}
\end{tikzpicture}

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

راهنمای pgfplots در CTAN همهٔ گزینه‌ها را توضیح می‌دهد: ctan.org/pkg/pgfplots. برای نقطه‌های بدون خط، نمودارهای پراکندگی را ببینید.

همچنین ببینید: مبانی pgfplots، محورهای لگاریتمی، نمودارهای گروهی و داده از CSV.

پرسش و پاسخ

چطور در LaTeX یک تابع رسم کنم؟

درون یک axis بنویسید \addplot[domain=a:b, samples=n] {formula}; و x را به عنوان متغیر به کار ببرید، مثلاً {x^2 - 1}.

چطور نشانه‌ها را از یک خط بردارم؟

no marks را به گزینه‌های \addplot اضافه کنید، یا گزینه‌ها را بدون + بدهید (مثلاً \addplot[blue]) که یک خط ساده می‌کشد.

چرا sin(x) تقریباً صاف به نظر می‌رسد؟

pgfplots زاویه را بر حسب درجه می‌خواند، پس sin(x) روی 0 تا 6 فقط 6 درجه را پوشش می‌دهد. sin(deg(x)) بنویسید.

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