Sumbu logaritmik dengan pgfplots
Ganti axis dengan semilogyaxis (y log), semilogxaxis (x log), atau loglogaxis (keduanya), atau atur ymode=log atau xmode=log pada axis biasa.
Skala log pada sumbu y
Nilai yang tumbuh berlipat, seperti jumlah, galat, atau frekuensi, paling mudah dibaca pada skala log. semilogyaxis membiarkan x tetap linear dan membuat y logaritmik. Tanda skala berada pada pangkat sepuluh dan diberi label $10^k$.
Pertumbuhan eksponensial pada sumbu y log
\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}Garis lurus pada plot ini berarti pertumbuhan konstan dengan faktor yang sama di setiap langkah.
Kedua sumbu logaritmik
loglogaxis membuat kedua sumbu logaritmik. Hukum pangkat seperti $y = x^2$ menjadi garis lurus dengan kemiringan sama dengan eksponennya.
Hukum pangkat pada plot 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}Hal yang sama dengan xmode dan ymode
xmode=log dan ymode=log memberi skala log pada axis biasa. Ini berguna saat pilihan itu dibuat lewat sebuah gaya, atau di dalam plot berkelompok.
xmode=log pada sumbu biasa
\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}Rumus juga berfungsi pada sumbu log, tetapi domain dan samples dinyatakan dalam satuan data: sampel tersebar merata di antara kedua ujung, sehingga pada sumbu log hampir semuanya jatuh di dekade terakhir. Karena itu contoh ini memplot kurva parametrik dalam eksponen t, dari $10^1$ sampai $10^5$, yang menyebarkan sampel secara merata sepanjang sumbu log. pgfplots berperilaku sama.
Basis lain
log basis y=2 (atau log basis x) mengubah basisnya. Tanda skala kemudian berada pada pangkat 2 dan diberi label $2^k$.
Basis 2 pada sumbu 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}Opsi pada sumbu log
| Opsi | Di Scissor LaTeX | Catatan |
|---|---|---|
semilogxaxis, semilogyaxis, loglogaxis | Berfungsi | |
xmode=log, ymode=log | Berfungsi | |
log basis x=b, log basis y=b | Berfungsi | |
ymin, ymax pada sumbu log | Berfungsi | Berikan nilai positif. |
log ticks with fixed point | Tidak didukung | Diabaikan dengan pesan; label tetap berupa pangkat. |
ybar stacked pada sumbu log | Tidak didukung | Batang digambar saling menimpa, tidak ditumpuk, dan tanpa pesan. |
| nilai 0 atau kurang | Dibuang | Titik yang tidak bisa ditampilkan pada skala log ditinggalkan, dengan satu pesan. |
Apa yang berbeda dari instalasi TeX
Lihat diagram batang untuk batang pada sumbu linear dan manual pgfplots untuk setiap opsinya: ctan.org/pkg/pgfplots.
Lihat juga Plot garis, Plot berkelompok, dan Kontur dan peta panas.
Tanya jawab
Bagaimana cara membuat sumbu y logaritmik di pgfplots?
Pakai \begin{semilogyaxis} ... \end{semilogyaxis} sebagai ganti axis, atau tambahkan ymode=log ke opsi sumbu.
Mengapa plot log saya tidak menampilkan data?
Sumbu log tidak bisa menampilkan nilai nol atau negatif. Titik dengan nilai seperti itu dibuang, dan tab Masalah memberitahukannya. Geser datanya atau pakai sumbu linear.
Bisakah saya memakai basis 2 atau basis e?
Bisa, dengan log basis y=2 (atau bilangan positif apa pun, misalnya log basis x=2.71828).
Setiap contoh di halaman ini ditata oleh Scissor LaTeX saat situs dibuat. Terakhir diperbarui 2026-11-07.