דילוג לתוכן

צירים לוגריתמיים עם pgfplots

מחליפים את axis ב-semilogyaxis (y לוגריתמי), ב-semilogxaxis (x לוגריתמי) או ב-loglogaxis (שניהם), או קובעים ymode=log או xmode=log על axis רגיל.

סקאלה לוגריתמית על ציר ה-y

ערכים שגדלים פי כמה וכמה, כמו ספירות, שגיאות או תדירויות, נקראים הכי טוב בסקאלה לוגריתמית. semilogyaxis משאיר את x ליניארי והופך את y ללוגריתמי. השנתות נמצאות בחזקות של עשר ומסומנות כ-$10^k$.

גדילה מעריכית על ציר y לוגריתמי

LaTeXמבוא: \usepackage{pgfplots}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tikzpicture}
  \begin{semilogyaxis}[xlabel={Day}, ylabel={Cells}, grid=major]
    \addplot coordinates {(0,44) (1,120) (2,350) (3,980) (4,2700) (5,7600) (6,21000)};
  \end{semilogyaxis}
\end{tikzpicture}

קו ישר בגרף הזה פירושו גדילה קבועה באותו פקטור בכל צעד.

שני הצירים לוגריתמיים

loglogaxis הופך את שני הצירים ללוגריתמיים. חוק חזקה כמו $y = x^2$ הופך לקו ישר שהשיפוע שלו הוא המעריך.

חוקי חזקה בגרף log-log

LaTeXמבוא: \usepackage{pgfplots}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tikzpicture}
  \begin{loglogaxis}[xlabel=$n$, ylabel={Time (s)}, legend pos=north west]
    \addplot coordinates {(10,0.001) (100,0.01) (1000,0.1) (10000,1)};
    \addplot coordinates {(10,0.0001) (100,0.01) (1000,1) (10000,100)};
    \legend{$O(n)$, $O(n^2)$}
  \end{loglogaxis}
\end{tikzpicture}
סודר על ידי Scissor LaTeX: חוקי חזקה בגרף log-log

אותו דבר עם xmode ו-ymode

xmode=log ו-ymode=log נותנים ל-axis רגיל סקאלה לוגריתמית. זה שימושי כשהבחירה נעשית על ידי סגנון, או בתוך קבוצת גרפים.

xmode=log על ציר רגיל

LaTeXמבוא: \usepackage{pgfplots}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tikzpicture}
  \begin{axis}[xmode=log, xlabel={Frequency (Hz)}, ylabel={Gain (dB)}, ymin=-30, ymax=5]
    \addplot[blue, thick, domain=1:5, samples=60, variable=t]
      ({10^t}, {-10*log10(1 + (10^t/1000)^2)});
  \end{axis}
\end{tikzpicture}
סודר על ידי Scissor LaTeX: xmode=log על ציר רגיל

נוסחאות עובדות גם על צירים לוגריתמיים, אבל domain ו-samples הם ביחידות של הנתונים: הדגימות מתפזרות באופן שווה בין שני הקצוות, כך שעל ציר לוגריתמי כמעט כולן נופלות בעשרת האחרונה. לכן הדוגמה מציירת עקומה פרמטרית במעריך t, מ-$10^1$ עד $10^5$, וכך הדגימות מתפזרות באופן שווה לאורך הציר הלוגריתמי. pgfplots מתנהג באותה דרך.

בסיס אחר

log basis y=2 (או log basis x) משנה את הבסיס. השנתות נמצאות אז בחזקות של 2 ומסומנות $2^k$.

בסיס 2 על ציר ה-y

LaTeXמבוא: \usepackage{pgfplots}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tikzpicture}
  \begin{semilogyaxis}[log basis y=2, xlabel={Doublings}, ymin=1, ymax=64]
    \addplot coordinates {(0,1) (1,2) (2,4) (3,8) (4,16) (5,32)};
  \end{semilogyaxis}
\end{tikzpicture}

אפשרויות על צירים לוגריתמיים

אפשרותב-Scissor LaTeXהערות
semilogxaxis, semilogyaxis, loglogaxisעובד
xmode=log, ymode=logעובד
log basis x=b, log basis y=bעובד
ymin, ymax על ציר לוגריתמיעובדנותנים ערכים חיוביים.
log ticks with fixed pointלא נתמךמתעלמים ממנו עם הודעה; התוויות נשארות כחזקות.
ybar stacked על ציר לוגריתמילא נתמךהעמודות מצוירות זו מעל זו, לא מוערמות, ולא מוצגת הודעה.
ערכים של 0 ומטהמושמטיםנקודות שאי אפשר להציג בסקאלה לוגריתמית נשארות בחוץ, עם הודעה אחת.

מה שונה מהתקנת TeX

ראו גרפי עמודות לעמודות על צירים ליניאריים, ואת מדריך pgfplots לכל אפשרות: ctan.org/pkg/pgfplots.

ראו גם גרפי קווים, קבוצות גרפים וקווי מתאר ומפות חום.

שאלות ותשובות

איך הופכים את ציר ה-y ללוגריתמי ב-pgfplots?

משתמשים ב-\begin{semilogyaxis} ... \end{semilogyaxis} במקום axis, או מוסיפים ymode=log לאפשרויות של הציר.

למה הגרף הלוגריתמי שלי לא מציג נתונים?

ציר לוגריתמי לא יכול להציג אפס או ערכים שליליים. נקודות עם ערכים כאלה מושמטות, ולשונית הבעיות מציינת זאת. מזיזים את הנתונים או משתמשים בציר ליניארי.

אפשר להשתמש בבסיס 2 או בבסיס e?

כן, עם log basis y=2 (או כל מספר חיובי, למשל log basis x=2.71828).

כל דוגמה בדף הזה מסודרת על ידי Scissor LaTeX בזמן בניית האתר. עודכן לאחרונה: 2026-11-07.