رفتن به محتوا

pgfplots در Scissor LaTeX

بستهٔ pgfplots در Scissor LaTeX برای بیشتر نمودارهای دوبعدی کار می‌کند و با رسام خودش کشیده می‌شود: محورها، نمودارهای خطی، پراکنش و میله‌ای، فرمول‌ها، جدول‌ها و فایل‌های CSV، محورهای لگاریتمی، میله‌های خطا، راهنماها، groupplots، fill between و نقشه‌های حرارتی از نمای بالا؛ نماهای سه‌بعدی، axis equal و جدول‌های pgfplotstable هنوز پشتیبانی نمی‌شوند.

کار این بسته

pgfplots نمودارها را از داده یا فرمول درون یک تصویر TikZ رسم می‌کند. شما \begin{tikzpicture}\begin{axis}[...] را باز می‌کنید، برای هر سری یک \addplot اضافه می‌کنید و pgfplots تیک‌ها، راهنما و رنگ‌ها را انتخاب می‌کند. گزینه‌های آن محورهای لگاریتمی، نمودارهای میله‌ای، میله‌های خطا، نقشه‌های رنگ و بسیار بیشتر را پوشش می‌دهند.

Scissor LaTeX بستهٔ pgfplots را اجرا نمی‌کند. حروف‌چین همان کد را می‌خواند و نمودار را خودش، به شکل گرافیک برداری و با برچسب‌هایی به قلم‌های سند شما، رسم می‌کند. نتیجه از پیش‌فرض‌های pgfplots از نزدیک پیروی می‌کند و کد منبع بدون تغییر در یک نصب TeX کامپایل می‌شود.

آنچه این‌جا کار می‌کند

ویژگیدر Scissor LaTeXبیشتر
axis با برچسب‌ها، عنوان، راهنما، شبکه، تیک‌ها، بازه‌هاکار می‌کندمبانی pgfplots
خط‌ها، نشانه‌ها، رنگ‌ها، cycle list، smooth، const plotکار می‌کندنمودارهای خطی
only marks، نمودارهای پراکنشکار می‌کندنمودارهای پراکنش
ybar، xbar، میله‌های انباشته، nodes near coords، symbolic x coordsکار می‌کندنمودارهای میله‌ای
error bars/.cd، y explicit، +- (x, y)کار می‌کندمیله‌های خطا
semilogyaxis، loglogaxis، xmode=logکار می‌کندمحورهای لگاریتمی
groupplot با group style (کتابخانهٔ groupplots)کار می‌کندنمودارهای گروهی
\addplot table از سطرهای درون سند یا فایل .csv/.dat پروژهکار می‌کندداده از CSV
\addplot3 با view={0}{90}: surf، matrix plot، contour filled، colorbarکار می‌کندپربندها و نقشه‌های حرارتی
fill between (کتابخانهٔ fillbetween)، name pathکار می‌کند
\pgfplotsset{...}، سبک‌ها، compat=کار می‌کندصرف‌نظر از تنظیم، مانند compat=1.18 رفتار می‌کند.
\addplot3 با هر view دیگر (سه‌بعدی واقعی)پشتیبانی نمی‌شودمحوری خالی، همراه با پیام، رسم می‌شود.
axis equalپشتیبانی نمی‌شودبا پیامی نادیده گرفته می‌شود؛ محورها مقیاس‌های خودشان را نگه می‌دارند.
\pgfplotstabletypeset (pgfplotstable)پشتیبانی نمی‌شودبا پیامی نادیده گرفته می‌شود و نام فایل چاپ می‌شود.
گزینه‌های ناشناختهکنار گذاشته شدهبا پیامی که گزینه را نام می‌برد نادیده گرفته می‌شوند؛ بقیه رسم می‌شود.

نمونه‌ها

یک نمودار میله‌ای با برچسب مقدارها:

نمودار میله‌ای با nodes near coords

\begin{tikzpicture}
  \begin{axis}[ybar, bar width=12pt, ymin=0, ymax=52,
      symbolic x coords={Mon,Tue,Wed,Thu}, xtick=data,
      nodes near coords, enlarge x limits=0.2,
      ylabel={Visitors}, width=7cm, height=5cm]
    \addplot coordinates {(Mon,31) (Tue,44) (Wed,38) (Thu,27)};
  \end{axis}
\end{tikzpicture}

دو سری خوانده‌شده از جدولی که درون سند نوشته شده، با یک راهنما:

ستون‌های یک جدول درون سند

\begin{tikzpicture}
  \begin{axis}[xlabel={Week}, ylabel={Hours of practice},
      legend pos=north west, width=7cm, height=5cm]
    \addplot table [x=week, y=erika] {
      week erika john
      1    4     2
      2    6     3
      3    5     5
      4    8     6
    };
    \addlegendentry{Erika}
    \addplot table [x=week, y=john] {
      week erika john
      1    4     2
      2    6     3
      3    5     5
      4    8     6
    };
    \addlegendentry{John}
  \end{axis}
\end{tikzpicture}

رویه‌ای که از زاویه دیده شود هنوز رسم نمی‌شود. محور خالی ظاهر می‌شود و زبانهٔ «مشکلات» دلیلش را توضیح می‌دهد:

نمای سه‌بعدی رسم نمی‌شود

\begin{tikzpicture}
  \begin{axis}[view={60}{30}, width=6cm]
    \addplot3[surf, domain=-2:2] {x^2 - y^2};
  \end{axis}
\end{tikzpicture}

زبانهٔ مشکلات: 3D plots are drawn only when seen from above (view={0}{90}) for now

سازگاری

  • از یک نصب TeX به این‌جا: بیشتر نمودارهای دوبعدی با اختلافی در حد یکی دو پوینت همان‌طور به نظر می‌رسند که آن‌جا. نمودارهای سه‌بعدی واقعی، axis equal و گزینه‌های بیرون از مجموعهٔ پشتیبانی‌شده در زبانهٔ «مشکلات» نام برده می‌شوند.
  • از این‌جا به یک نصب TeX: نمودارها آن‌جا بدون تغییر با pgfplots کامپایل می‌شوند. contour lua و contour gnuplot آن‌جا به LuaLaTeX یا gnuplot نیاز دارند؛ contour filled به هیچ‌کدام نیاز ندارد.

راهنمای کامل در CTAN است: ctan.org/pkg/pgfplots. برای رسم‌های بدون محور، TikZ را ببینید.

پرسش و پاسخ

آیا برای استفاده از pgfplots در این‌جا باید آن را نصب کنم؟

نه. مثل همیشه \usepackage{pgfplots} بنویسید؛ Scissor LaTeX کد را می‌شناسد و نمودار را در مرورگر رسم می‌کند.

چرا نمودار سه‌بعدی من خالی است؟

تا کنون فقط نمودارهایی که از بالا دیده می‌شوند (view={0}{90}) رسم می‌شوند. نماهای دیگر محوری خالی و پیامی در زبانهٔ «مشکلات» می‌دهند.

آیا می‌توانم داده‌ها را از یک فایل CSV رسم کنم؟

بله. فایل را به پروژه اضافه کنید و \addplot table[x=a, y=b, col sep=comma] {file.csv}; بنویسید.

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