Λογαριθμικοί άξονες με pgfplots
Αντικαταστήστε το axis με semilogyaxis (λογαριθμικός y), semilogxaxis (λογαριθμικός x) ή loglogaxis (και οι δύο), ή ορίστε ymode=log ή xmode=log σε ένα κανονικό axis.
Λογαριθμική κλίμακα στον άξονα y
Οι τιμές που μεγαλώνουν κατά παράγοντες, όπως πλήθη, σφάλματα ή συχνότητες, διαβάζονται καλύτερα σε λογαριθμική κλίμακα. Το semilogyaxis κρατά τον x γραμμικό και κάνει τον y λογαριθμικό. Οι υποδιαιρέσεις βρίσκονται στις δυνάμεις του δέκα και έχουν ετικέτες $10^k$.
Εκθετική αύξηση σε λογαριθμικό άξονα y
\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
\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}Το ίδιο με xmode και ymode
Τα xmode=log και ymode=log δίνουν σε ένα κανονικό axis λογαριθμική κλίμακα. Αυτό είναι βολικό όταν η επιλογή γίνεται από ένα στυλ ή μέσα σε ένα ομαδικό γράφημα.
xmode=log σε κανονικό άξονα
\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}Οι τύποι λειτουργούν και σε λογαριθμικούς άξονες, αλλά τα domain και samples είναι σε μονάδες δεδομένων: τα δείγματα κατανέμονται ομοιόμορφα ανάμεσα στα δύο άκρα, οπότε σε λογαριθμικό άξονα σχεδόν όλα πέφτουν στην τελευταία δεκάδα. Γι' αυτό το παράδειγμα σχεδιάζει μια παραμετρική καμπύλη στον εκθέτη t, από $10^1$ έως $10^5$, που κατανέμει τα δείγματα ομοιόμορφα κατά μήκος του λογαριθμικού άξονα. Το pgfplots συμπεριφέρεται με τον ίδιο τρόπο.
Άλλη βάση
Το log basis y=2 (ή log basis x) αλλάζει τη βάση. Οι υποδιαιρέσεις βρίσκονται τότε στις δυνάμεις του 2 και έχουν ετικέτες $2^k$.
Βάση 2 στον άξονα y
\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.