> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/id/bidang-khusus/08-pgfplots-package.md).

# Paket pgfplots

## Pendahuluan

Fitur `pgfplots` paket, yang didasarkan pada [`TikZ`](/latex/id/gambar-dan-tabel/05-tikz-package.md), adalah alat visualisasi yang kuat dan ideal untuk membuat grafik ilmiah/teknis. Gagasan dasarnya adalah bahwa Anda menyediakan data/rumus masukan dan `pgfplots` melakukan sisanya.

### Pembukaan dokumen

Untuk menggunakan `pgfplots` paket dalam dokumen Anda, tambahkan baris berikut ke pembukaan Anda:

`\usepackage{pgfplots}`

Anda juga dapat mengonfigurasi perilaku `pgfplots` di pembukaan dokumen. Misalnya, untuk mengubah ukuran setiap plot dan menjamin kompatibilitas mundur (disarankan), tambahkan baris berikut:

`\pgfplotsset{width=10cm,compat=1.9}`

Ini mengubah ukuran setiap `pgfplot` menjadi 10 sentimeter, yang sangat besar; Anda dapat menggunakan satuan lain (pt, mm, in). *compat* parameter ini digunakan agar kode dapat bekerja pada versi paket 1.9 atau yang lebih baru.

### Waktu kompilasi (latar belakang singkat)

Ketika mesin TeX asli dirancang/ditulis, lebih dari 40 tahun yang lalu, mesin itu tidak dirancang untuk *langsung* pembuatan grafik—grafik tersebut seharusnya berupa berkas yang dibuat oleh program eksternal (misalnya, MetaPost) dan diimpor ke dokumen yang disusun. Munculnya pdfTeX—yang sangat didasarkan pada perangkat lunak TeX asli—membawa kemampuan untuk membuat grafik *langsung* dengan menggunakan perintah bahasa TeX bawaan baru dari pdfTeX (disebut *primitif*) yang dapat menghasilkan operator/data PDF yang diperlukan untuk membuat grafik. Penciptaan pdfTeX mendorong pengembangan paket grafis LaTeX yang canggih, seperti `TikZ`, `pgfplots` dll., yang mampu menghasilkan grafik yang dikodekan menggunakan perintah LaTeX tingkat tinggi.

Namun, di balik layar, dan jauh di dalam mesin pdfTeX (dan mesin lainnya), perintah grafis LaTeX tingkat tinggi tersebut perlu diproses dengan “mengonversinya” kembali menjadi perintah (primitif) tingkat rendah mesin pdfTeX yang sebenarnya menghasilkan operator PDF yang diperlukan untuk membuat gambar hasilnya. Pemrosesan perintah grafis LaTeX itu—perluasan dan eksekusi perintah primitif—dapat memakan waktu yang tidak bisa diabaikan. Bahkan satu perintah grafis LaTeX tingkat tinggi, beserta data yang sesuai, mungkin memerlukan eksekusi berulang dari *banyak* perintah (primitif) mesin TeX tingkat rendah. Dari sudut pandang pengguna akhir, dokumen yang berisi beberapa `pgfplots` gambar, dan/atau grafik yang sangat kompleks, dapat memerlukan waktu yang cukup lama untuk dirender (dikompilasi).

### Mengurangi waktu kompilasi

Untuk meningkatkan kecepatan kompilasi dokumen, Anda dapat mengonfigurasi `pgfplots` paket agar mengekspor gambar ke berkas PDF terpisah lalu mengimpornya ke dalam dokumen: kompilasi sekali, lalu gunakan kembali gambar-gambarnya. Untuk melakukannya, tambahkan kode di bawah ini ke pembukaan:

```
\usepgfplotslibrary{external}
\tikzexternalize
```

Lihat [artikel bantuan ini](/latex/id/pertanyaan-and-jawaban/60-i-have-a-lot-of-tikz-matlab2tikz-or-pgfplots-figures-so-i-m-getting-a-compilation-timeout.-can-i.md) untuk rincian lebih lanjut tentang cara menyiapkan eksternalisasi tikz di proyek Overleaf Anda.

## Contoh dasar (juga mengeksternalisasi gambar)

```latex
\documentclass{article}
\usepackage[margin=0.25in]{geometry}
\usepackage{pgfplots}
\pgfplotsset{width=10cm,compat=1.9}

% Kita akan mengeksternalisasi gambar
\usepgfplotslibrary{external}
\tikzexternalize

\begin{document}

Contoh pertama adalah ekspresi matematika 2D dan 3D yang diplot berdampingan.

%Di sini dimulai plot 2D
\begin{tikzpicture}
\begin{axis}
\addplot[color=red]{exp(x)};
\end{axis}
\end{tikzpicture}
%Di sini berakhir plot 2D
\hskip 5pt
%Di sini dimulai plot 3D
\begin{tikzpicture}
\begin{axis}
\addplot3[
    surf,
]
{exp(-x^2-y^2)*x};
\end{axis}
\end{tikzpicture}
%Di sini berakhir plot 3D

\end{document}
```

[Buka `pgfplots` contoh di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.25in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%0A%25+We+will+externalize+the+figures%0A%5Cusepgfplotslibrary%7Bexternal%7D%0A%5Ctikzexternalize%0A%0A%5Cbegin%7Bdocument%7D%0A%0AFirst+example+is+2D+and+3D+math+expressions+plotted+side-by-side.%0A%0A%25Here+begins+the+2D+plot%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%0A%5Caddplot%5Bcolor%3Dred%5D%7Bexp%28x%29%7D%3B%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%25Here+ends+the+2D+plot%0A%5Chskip+5pt%0A%25Here+begins+the+3D+plot%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%0A%5Caddplot3%5B%0A++++surf%2C%0A%5D%0A%7Bexp%28-x%5E2-y%5E2%29%2Ax%7D%3B%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%25Here+ends+the+3D+plot%0A%0A%5Cend%7Bdocument%7D)

Gambar berikut menunjukkan hasil yang dihasilkan oleh kode di atas:

![Plgplotsex1OLV2.png](/files/87cb394e3d5f0d3582926ba86a15ff60173d3fd6)

### Penjelasan kode

Karena `pgfplots` didasarkan pada `tikz` plot harus berada di dalam sebuah `tikzpicture` lingkungan. Lalu deklarasi lingkungan `\begin{axis}`, `\end{axis}` akan mengatur penskalaan yang benar untuk plot—lihat [Panduan referensi](#reference-guide) untuk lingkungan sumbu lainnya.

Untuk menambahkan plot sebenarnya, perintah `\addplot[color=red]{log(x)};` digunakan. Di dalam tanda kurung siku, `[...]`, beberapa opsi dapat diteruskan; di sini, kita mengatur `warna` plot menjadi `merah`. Tanda kurung siku wajib ada; jika tidak ada opsi yang diteruskan, biarkan ruang kosong di antaranya. Di dalam tanda kurung kurawal, Anda menuliskan fungsi yang akan diplot. Penting untuk diingat bahwa perintah ini harus diakhiri dengan titik koma (;).

Untuk menempatkan plot kedua di sebelah yang pertama, deklarasikan sebuah `tikzpicture` lingkungan baru. Jangan sisipkan baris baru, tetapi celah kosong kecil; dalam hal ini `hskip 10pt` akan menyisipkan ruang kosong selebar 10pt.

Sintaks lainnya sama, kecuali untuk `\addplot3 [surf,]{exp(-x^2-y^2)*x};`. Ini akan menambahkan plot 3D, dan opsi `surf` di dalam tanda kurung siku menyatakan bahwa itu adalah plot permukaan. Fungsi yang akan diplot harus ditempatkan di dalam tanda kurung kurawal. Sekali lagi, jangan lupa menaruh titik koma (;) di akhir perintah.

**Catatan**: Sebagai praktik yang baik, disarankan untuk membuat indentasi pada kode—lihat plot kedua pada contoh di atas—dan menambahkan koma (,) di akhir setiap opsi yang diteruskan ke `\addplot`. Dengan cara ini, kode lebih mudah dibaca dan lebih mudah menambahkan opsi tambahan jika diperlukan.

## Plot 2D

`pgfplots`Kemampuan plotting 2D sangat luas—dan Anda dapat menyesuaikan plot Anda sesuai kebutuhan. Namun, opsi bawaan biasanya memberikan hasil yang sangat baik, jadi yang perlu Anda lakukan hanyalah memasukkan data dan LaTeX akan melakukan sisanya.

### Memplot ekspresi matematika

Berikut contohnya:

```latex
\begin{tikzpicture}
\begin{axis}[
    axis lines = left,
    xlabel = \(x\),
    ylabel = {\(f(x)\)},
]
%Di bawah ini parabola merah didefinisikan
\addplot [
    domain=-10:10,
    samples=100,
    color=red,
]
{x^2 - 2*x - 1};
\addlegendentry{\(x^2 - 2x - 1\)}
%Di sini parabola biru didefinisikan
\addplot [
    domain=-10:10,
    samples=100,
    color=blue,
    ]
    {x^2 + 2*x + 1};
\addlegendentry{\(x^2 + 2x + 1\)}

\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` contoh di Overleaf.](https://www.overleaf.com/docs?engine=\&snip_name=pgfplots+example+2\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.25in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%5B%0A++++axis+lines+%3D+left%2C%0A++++xlabel+%3D+%5C%28x%5C%29%2C%0A++++ylabel+%3D+%7B%5C%28f%28x%29%5C%29%7D%2C%0A%5D%0A%25Below+the+red+parabola+is+defined%0A%5Caddplot+%5B%0A++++domain%3D-10%3A10%2C+%0A++++samples%3D100%2C+%0A++++color%3Dred%2C%0A%5D%0A%7Bx%5E2+-+2%2Ax+-+1%7D%3B%0A%5Caddlegendentry%7B%5C%28x%5E2+-+2x+-+1%5C%29%7D%0A%25Here+the+blue+parabola+is+defined%0A%5Caddplot+%5B%0A++++domain%3D-10%3A10%2C+%0A++++samples%3D100%2C+%0A++++color%3Dblue%2C%0A++++%5D%0A++++%7Bx%5E2+%2B+2%2Ax+%2B+1%7D%3B%0A%5Caddlegendentry%7B%5C%28x%5E2+%2B+2x+%2B+1%5C%29%7D%0A%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Plgplotsex2.png](/files/394d2538e7d49361198106fce4d7dec9f7bb1f5d)

#### Penjelasan kode

Mari kita analisis perintah-perintah baru baris demi baris:

**axis lines = left.**

Ini akan mengatur sumbu hanya pada sisi kiri dan bawah plot, alih-alih kotak bawaan. Opsi penyesuaian lebih lanjut ada di panduan referensi.

**xlabel = (x) dan ylabel = {(f(x))}.**

Nama parameter ini cukup jelas, keduanya memungkinkan Anda memberi label pada sumbu horizontal dan vertikal. Perhatikan nilai ylabel di antara tanda kurung kurawal; tanda kurung ini memberi tahu pgfplots cara mengelompokkan teks. xlabel juga bisa diberi tanda kurung. Ini berguna untuk label rumit yang dapat membingungkan pgfplots.

**\addplot.**

Ini akan menambahkan plot ke sumbu; penggunaan umumnya telah dijelaskan pada bagian pengantar. Ada dua parameter baru dalam contoh ini.

**domain=-10:10.**

Ini menetapkan rentang nilai x.

**samples=100.**

Menentukan jumlah titik dalam interval yang didefinisikan oleh domain. Semakin besar nilai samples, semakin tajam grafik yang dihasilkan, tetapi akan memakan waktu lebih lama untuk dirender.

**\addlegendentry{\\(x^2 - 2x - 1\\)}.**

Ini menambahkan legenda untuk mengidentifikasi fungsi x^2 - 2x - 1.

Untuk menambahkan grafik lain ke plot, cukup tulis sebuah `\addplot` entri baru.

### Memplot dari data

Penelitian ilmiah sering menghasilkan data yang harus dianalisis. Contoh berikut menunjukkan cara memplot data dengan *pgfplots*:

```latex
Memplot dari data:

\begin{tikzpicture}
\begin{axis}[
    title={Ketergantungan suhu kelarutan CuSO\(_4\cdot\)5H\(_2\)O},
    xlabel={Suhu [\textcelsius]},
    ylabel={Kelarutan [g per 100 g air]},
    xmin=0, xmax=100,
    ymin=0, ymax=120,
    xtick={0,20,40,60,80,100},
    ytick={0,20,40,60,80,100,120},
    legend pos=north west,
    ymajorgrids=true,
    grid style=dashed,
]

\addplot[
    color=blue,
    mark=square,
    ]
    coordinates {
    (0,23.1)(10,27.5)(20,32)(30,37.8)(40,44.6)(60,61.8)(80,83.8)(100,114)
    };
    \legend{CuSO\(_4\cdot\)5H\(_2\)O}

\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` contoh di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+example+3\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Btextcomp%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0APlotting+from+data%3A%0A%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%5B%0A++++title%3D%7BTemperature+dependence+of+CuSO%5C%28_4%5Ccdot%5C%295H%5C%28_2%5C%29O+solubility%7D%2C%0A++++xlabel%3D%7BTemperature+%5B%5Ctextcelsius%5D%7D%2C%0A++++ylabel%3D%7BSolubility+%5Bg+per+100+g+water%5D%7D%2C%0A++++xmin%3D0%2C+xmax%3D100%2C%0A++++ymin%3D0%2C+ymax%3D120%2C%0A++++xtick%3D%7B0%2C20%2C40%2C60%2C80%2C100%7D%2C%0A++++ytick%3D%7B0%2C20%2C40%2C60%2C80%2C100%2C120%7D%2C%0A++++legend+pos%3Dnorth+west%2C%0A++++ymajorgrids%3Dtrue%2C%0A++++grid+style%3Ddashed%2C%0A%5D%0A%0A%5Caddplot%5B%0A++++color%3Dblue%2C%0A++++mark%3Dsquare%2C%0A++++%5D%0A++++coordinates+%7B%0A++++%280%2C23.1%29%2810%2C27.5%29%2820%2C32%29%2830%2C37.8%29%2840%2C44.6%29%2860%2C61.8%29%2880%2C83.8%29%28100%2C114%29%0A++++%7D%3B%0A++++%5Clegend%7BCuSO%5C%28_4%5Ccdot%5C%295H%5C%28_2%5C%29O%7D%0A++++%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Plgplotsex3.png](/files/0f2afd8a99d34be8b1bac7f49f305e6d15772ad1)

#### Penjelasan kode

Ada beberapa perintah dan parameter baru di sini:

**title={Ketergantungan suhu kelarutan CuSO(\_4\cdot)5H(\_2)O}.**

Seperti yang Anda duga, ini memberikan judul pada gambar. Judul akan ditampilkan di atas plot.

**Batas minimum dan maksimum sumbu x dan y.**

Titik-titik tempat tanda diletakkan. Jika kosong, tanda akan diatur secara otomatis.

**Posisi kotak legenda. Lihat panduan referensi untuk opsi lainnya.**

Ini mengaktifkan/menonaktifkan garis kisi pada posisi tanda pada sumbu y. Gunakan xmajorgrids untuk mengaktifkan garis kisi pada sumbu x.

**Cukup jelas. Untuk menampilkan garis kisi putus-putus.**

Ini menggambar tanda berbentuk persegi pada setiap titik dalam larik koordinat. Setiap tanda akan dihubungkan dengan tanda berikutnya oleh garis lurus.

**Koordinat titik-titik yang akan diplot. Inilah data yang ingin Anda analisis secara grafis.**

Jika data berada dalam sebuah berkas, yang merupakan kasus paling sering; alih-alih perintah

**coordinates**

Anda harus menggunakan

**\addplot table {file\_with\_the\_data.dat}**

, opsi lainnya berlaku dalam lingkungan ini.

**Plot sebar**

Plot sebar digunakan untuk merepresentasikan informasi dengan menggunakan semacam tanda dan umum dipakai saat menghitung regresi statistik. Dalam contoh ini kita akan membuat plot sebar menggunakan data yang terdapat dalam berkas bernama

scattered\_example.dat `\addplot` dan `, di mana datanya terlihat seperti ini:` GPA  ma  ve  co   un `Plot sebar kita menggunakan dua kolom pertama dari data:`enlargelimits=false,

### \addplot+\[

hanya tanda, `scatter,`mark=halfcircle\*,

```
mark size=2.9pt]
3.45 643 589 3.76 3.52
2.78 558 512 2.87 2.91
2.52 583 503 2.54 2.4
3.67 685 602 3.83 3.47
3.24 592 538 3.29 3.47
2.1 562 486 2.64 2.37
...
```

table\[meta=ma]

```latex
\begin{tikzpicture}
\begin{axis}[
    {scattered_example.dat};
]
Scattered.png
    Buka contoh proyek plot sebar di Overleaf (berisi berkas data
    Parameter yang diteruskan ke
    axis
    addplot
lingkungan juga dapat digunakan dalam plot data, kecuali untuk
scatter
\end{axis}
\end{tikzpicture}
```

![. Berikut penjelasan kodenya:](/files/7999d8b691abceebe8cf22d3c10d8baf580b7831)

[enlarge limits=false `scatter,`).](https://www.overleaf.com/project/new/template/20099?id=68399290\&templateName=Scatter+plot+example\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

#### Penjelasan kode

Ini akan mengecilkan sumbu sehingga titik dengan nilai maksimum dan minimum berada di tepi plot. `only marks` dan `Sangat eksplisit, akan memberi tanda pada setiap titik.` Saat scatter digunakan, titik-titik diberi warna bergantung pada suatu nilai; warna tersebut diberikan oleh parameter meta yang dijelaskan di bawah. `mark=halfcircle`Jenis tanda yang digunakan pada setiap titik; lihat panduan referensi untuk daftar nilai yang mungkin.

**mark size=2.9pt**

Ukuran setiap tanda; satuan lain dapat digunakan.

**table\[meta=ma]{scattered\_example.dat};**

Di sini perintah table memberi tahu LaTeX bahwa data yang akan diplot berada dalam sebuah berkas. Parameter meta=ma diteruskan untuk memilih kolom yang menentukan warna setiap titik. Di dalam tanda kurung kurawal adalah nama berkas data.

**mark=halfcircle**

Grafik batang

**Grafik batang (juga dikenal sebagai bar chart dan bar plot) digunakan untuk menampilkan data yang terkumpul, terutama data statistik tentang suatu populasi tertentu. Bar plot di**\*

sangat dapat dikonfigurasi, tetapi di sini kita akan menunjukkan contoh sederhana:

**gaya label tanda x={**

/pgf/number format/1000 sep=},

**ylabel=Tahun,**

enlargelimits=0.05,

### legend style={at={(0.5,-0.1)},

anchor=north,legend columns=-1}, `pgfplots` ybar interval=0.7,

```latex
\begin{tikzpicture}
\begin{axis}[
	coordinates {(2012,408184) (2011,408348)
		coordinates {(2012,388950) (2011,393007)
	\legend{Men,Women}
	contoh kode grafik batang di Overleaf.
	Barchartsexample.png
	Gambar ini dimulai dengan (
	yang telah dijelaskan sebelumnya
]
\addplot
	) deklarasi
		 (2010,414870) (2009,412156)};
\addplot
	lingkungan, tetapi
		(2010,398449) (2009,395972)};
deklarasi ini memiliki sejumlah parameter baru:
\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` gaya label tanda x={/pgf/number format/1000 sep=}](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+bar+chart+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Btextcomp%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%5B%0A%09x+tick+label+style%3D%7B%0A%09%09%2Fpgf%2Fnumber+format%2F1000+sep%3D%7D%2C%0A%09ylabel%3DYear%2C%0A%09enlargelimits%3D0.05%2C%0A%09legend+style%3D%7Bat%3D%7B%280.5%2C-0.1%29%7D%2C%0A%09anchor%3Dnorth%2Clegend+columns%3D-1%7D%2C%0A%09ybar+interval%3D0.7%2C%0A%5D%0A%5Caddplot+%0A%09coordinates+%7B%282012%2C408184%29+%282011%2C408348%29%0A%09%09+%282010%2C414870%29+%282009%2C412156%29%7D%3B%0A%5Caddplot+%0A%09coordinates+%7B%282012%2C388950%29+%282011%2C393007%29+%0A%09%09%282010%2C398449%29+%282009%2C395972%29%7D%3B%0A%5Clegend%7BMen%2CWomen%7D%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Potongan kode ini mendefinisikan gaya lengkap untuk plot. Dengan gaya ini Anda dapat menyertakan beberapa perintah \addplot dalam lingkungan axis ini; semuanya akan pas dan tampak serasi tanpa penyesuaian tambahan (parameter ybar yang dijelaskan di bawah wajib agar ini berfungsi).](/files/4b4f765e2dfe2404e000ba4ee59bd4cdfdef215d)

#### Penjelasan kode

Gambar ini dimulai dengan ([yang telah dijelaskan sebelumnya](#introduction)) deklarasi dari `tikzpicture` dan `only marks` lingkungan, tetapi `only marks` deklarasi ini memiliki sejumlah parameter baru:

**x tick label style={/pgf/number format/1000 sep=}**

Potongan kode ini mendefinisikan gaya lengkap untuk plot. Dengan gaya ini Anda dapat menyertakan beberapa perintah \addplot dalam lingkungan axis ini; semuanya akan pas dan tampak serasi tanpa penyesuaian tambahan (parameter ybar yang dijelaskan di bawah wajib agar ini berfungsi).

**enlargelimits=0.05.**

Memperbesar batas pada plot batang diperlukan karena jenis plot ini sering memerlukan ruang tambahan di atas batang agar terlihat lebih baik dan/atau untuk menambahkan label. Nilai 0.05 tersebut relatif terhadap tinggi total plot.

**legend style={at={(0.5,-0.2)}, anchor=north,legend columns=-1}**

Sekali lagi, ini biasanya akan bekerja dengan baik. Jika perlu, ubah nilai -0.2 untuk menempatkan legenda lebih dekat/lebih jauh dari sumbu x.

**yang telah dijelaskan sebelumnya**

Ketebalan setiap batang. 1 berarti batang-batang akan berdampingan tanpa celah, dan 0 berarti tidak akan ada batang, hanya garis vertikal.

Fitur `, di mana datanya terlihat seperti ini:` pada jenis plot ini menentukan titik dasar batang dan tingginya.

Label pada sumbu y akan menampilkan hingga 4 digit. Jika angka yang Anda gunakan lebih besar dari 9999 `pgfplots` akan menggunakan notasi yang sama seperti pada contoh.

## Plot 3D

`pgfplots` memiliki kemampuan plotting 3D yang mungkin Anda harapkan dari perangkat lunak plotting.

### Memplot ekspresi matematika

Ada contoh sederhana tentang ini di [pendahuluan](#introduction), mari kita kerjakan sesuatu yang sedikit lebih kompleks:

```latex
\begin{tikzpicture}
\begin{axis}[
    title=Contoh menggunakan parameter mesh,
    sembunyikan sumbu,
    colormap/cool,
]
\addplot3[
    mesh,
    samples=50,
    domain=-8:8,
]
{sin(deg(sqrt(x^2+y^2)))/sqrt(x^2+y^2)};
\addlegendentry{\(\frac{sin(r)}{r}\)}
\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` Contoh 3D di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+3D+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%5B%0A++++title%3DExample+using+the+mesh+parameter%2C%0A++++hide+axis%2C%0A++++colormap%2Fcool%2C%0A%5D%0A%5Caddplot3%5B%0A++++mesh%2C%0A++++samples%3D50%2C%0A++++domain%3D-8%3A8%2C%0A%5D%0A%7Bsin%28deg%28sqrt%28x%5E2%2By%5E2%29%29%29%2Fsqrt%28x%5E2%2By%5E2%29%7D%3B%0A%5Caddlegendentry%7B%5C%28%5Cfrac%7Bsin%28r%29%7D%7Br%7D%5C%29%7D%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Pgfplots3dexample.png](/files/157a6f4a0a3b6ef47e67ad4269d57753639a6097)

#### Penjelasan kode

Sebagian besar perintah di sini telah dijelaskan, tetapi ada 3 hal baru:

**sembunyikan sumbu**

Opsi ini di lingkungan axis sudah cukup jelas; sumbu tidak akan ditampilkan.

**colormap/cool**

Merupakan skema warna yang akan digunakan dalam plot. Lihat panduan referensi untuk skema warna lainnya.

**mesh**

Opsi ini juga cukup jelas; lihat juga parameter surf pada contoh pengantar.

**Catatan**: Saat bekerja dengan fungsi trigonometri `pgfplots` menggunakan derajat sebagai satuan bawaan; jika sudutnya dalam radian (seperti pada contoh ini) Anda harus menggunakan `deg` fungsi untuk mengonversinya ke derajat.

### Plot kontur

Di `pgfplots` dimungkinkan untuk memplot plot kontur, tetapi datanya harus dihitung terlebih dahulu oleh program eksternal. Mari lihat contohnya:

```latex
\begin{tikzpicture}
\begin{axis}
[
    title={Plot kontur, tampilan dari atas},
    view={0}{90}
]
\addplot3[
    contour gnuplot={levels={0.8, 0.4, 0.2, -0.2}}
]
{sin(deg(sqrt(x^2+y^2)))/sqrt(x^2+y^2)};
\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` contoh plot kontur di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+contour+plot+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%0A%5B%0A++++title%3D%7BContour+plot%2C+view+from+top%7D%2C%0A++++view%3D%7B0%7D%7B90%7D%0A%5D%0A%5Caddplot3%5B%0A++++contour+gnuplot%3D%7Blevels%3D%7B0.8%2C+0.4%2C+0.2%2C+-0.2%7D%7D%0A%5D%0A%7Bsin%28deg%28sqrt%28x%5E2%2By%5E2%29%29%29%2Fsqrt%28x%5E2%2By%5E2%29%7D%3B%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Contourplotexample.png](/files/ce18a970b4e4d1b1e605570f2b8b9fd68c50f9d1)

#### Penjelasan kode

Ini adalah plot beberapa garis kontur untuk persamaan yang sama yang digunakan pada bagian sebelumnya. Nilai dari `judul` parameter berada di dalam tanda kurung kurawal karena mengandung koma, jadi kita menggunakan tanda kurung pengelompokan untuk menghindari kebingungan dengan parameter lain yang diteruskan ke `\begin{axis}` deklarasi. Ada dua perintah baru:

**view={0}{90}**

Ini mengubah tampilan plot. Parameter ini diteruskan ke lingkungan axis, yang berarti dapat digunakan pada jenis plot 3D lainnya. Nilai pertama adalah rotasi, dalam derajat, di sekitar sumbu z; nilai kedua adalah untuk memutar tampilan di sekitar sumbu x. Dalam contoh ini, ketika kita menggabungkan rotasi 0° di sekitar sumbu z dan rotasi 90° di sekitar sumbu x, kita memperoleh tampilan plot dari atas.

**contour gnuplot={levels={0.8, 0.4, 0.2, -0.2}}**

Baris kode ini melakukan dua hal: Pertama, baris ini memberi tahu LaTeX untuk menggunakan perangkat lunak eksternal gnuplot untuk menghitung garis kontur; ini berfungsi dengan baik di Overleaf, tetapi jika Anda ingin menggunakan perintah ini dalam instalasi LaTeX lokal Anda, Anda harus menginstal gnuplot terlebih dahulu (matlab juga bisa digunakan; dalam kasus itu, tulis matlab вместо gnuplot dalam perintah). Kedua, parameter sub levels adalah daftar nilai tingkat elevasi tempat garis kontur akan dihitung.

### Memplot permukaan dari data

Untuk memplot sekumpulan data menjadi permukaan 3D, yang kita butuhkan hanyalah koordinat setiap titik. Koordinat ini bisa berupa himpunan yang tidak berurutan atau, dalam kasus ini, sebuah matriks:

```latex
\begin{tikzpicture}
\begin{axis}
\addplot3[
    surf,
]
coordinates {
(0,0,0) (0,1,0) (0,2,0)

(1,0,0) (1,1,0.6) (1,2,0.7)

(2,0,0) (2,1,0.7) (2,2,1.8)
};
\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` Contoh permukaan 3D di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=plotting+a+surface+from+data+with+pgfplots\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%0A%5Caddplot3%5B%0A++++surf%2C%0A%5D+%0Acoordinates+%7B%0A%280%2C0%2C0%29+%280%2C1%2C0%29+%280%2C2%2C0%29%0A%0A%281%2C0%2C0%29+%281%2C1%2C0.6%29+%281%2C2%2C0.7%29%0A%0A%282%2C0%2C0%29+%282%2C1%2C0.7%29+%282%2C2%2C1.8%29%0A%7D%3B%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![3dsurfacedata.png](/files/43bc6415912fbef3e216e11c4fceb16a807fe29a)

#### Penjelasan data

Titik-titik yang diteruskan ke `, di mana datanya terlihat seperti ini:` parameter diperlakukan seolah-olah berada dalam matriks 3 × 3, menggunakan baris kosong sebagai pemisah setiap baris matriks.

Semua opsi untuk plot 3D dalam artikel ini berlaku untuk permukaan data.

### Plot parametrik

Sintaks untuk plot parametrik sedikit berbeda. Mari lihat contohnya:

```latex
\begin{tikzpicture}
\begin{axis}
    [
    view={60}{30},
    ]
\addplot3[
    domain=0:5*pi,
    samples = 60,
    samples y=0,
]
({sin(deg(x))},
{cos(deg(x))},
{x});
\end{axis}
\end{tikzpicture}
```

[Buka `pgfplots` contoh plot parametrik di Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=pgfplots+parametric+plot+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bmargin%3D0.5in%5D%7Bgeometry%7D%0A%5Cusepackage%7Bpgfplots%7D%0A%5Cpgfplotsset%7Bwidth%3D10cm%2Ccompat%3D1.9%7D%0A%25%5Cusepgfplotslibrary%7Bexternal%7D%0A%25%5Ctikzexternalize%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Btikzpicture%7D%0A%5Cbegin%7Baxis%7D%0A++++%5B%0A++++view%3D%7B60%7D%7B30%7D%2C%0A++++%5D%0A%5Caddplot3%5B%0A++++domain%3D0%3A5%2Api%2C%0A++++samples+%3D+60%2C%0A++++samples+y%3D0%2C%0A%5D%0A%28%7Bsin%28deg%28x%29%29%7D%2C%0A%7Bcos%28deg%28x%29%29%7D%2C%0A%7Bx%7D%29%3B%0A%5Cend%7Baxis%7D%0A%5Cend%7Btikzpicture%7D%0A%5Cend%7Bdocument%7D)

Keluaran dari kode ini ditunjukkan pada gambar di bawah—pembukaan dokumen LaTeX ditambahkan secara otomatis saat Anda membuka tautan:

![Parametricplot.png](/files/9f681f2068f2086cff5b3c4819005da10dc12402)

#### Penjelasan kode

Hanya ada dua hal baru dalam contoh ini: pertama, `samples y=0` untuk mencegah `pgfplots` bergabungnya titik-titik ekstrem spiral; dan kedua, cara fungsi yang akan diplot diteruskan ke `addplot3` lingkungan. Setiap fungsi parameter dikelompokkan di dalam tanda kurung kurawal dan ketiga parameter dibatasi dengan tanda kurung.

## Panduan referensi

| Perintah/Opsi/Lingkungan | Deskripsi                                                                                                                            | Nilai yang Mungkin                                                                                                                                                                                                                                                                                              |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **only marks**           | Plot normal dengan skala linear                                                                                                      |                                                                                                                                                                                                                                                                                                                 |
| **semilogxaxis**         | skala logaritmik untuk x dan skala normal untuk y                                                                                    |                                                                                                                                                                                                                                                                                                                 |
| **semilogyaxis**         | skala logaritmik untuk y dan skala normal untuk x                                                                                    |                                                                                                                                                                                                                                                                                                                 |
| **loglogaxis**           | skala logaritmik untuk sumbu x dan y                                                                                                 |                                                                                                                                                                                                                                                                                                                 |
| **garis sumbu**          | mengubah cara sumbu digambar. bawaan adalah '*kotak*                                                                                 | box, left, middle, center, right, none                                                                                                                                                                                                                                                                          |
| **posisi legenda**       | posisi kotak legenda                                                                                                                 | south west, south east, north west, north east, outer north east                                                                                                                                                                                                                                                |
| **tanda**                | jenis tanda yang digunakan dalam plotting data. Saat menggunakan satu karakter, tampilan karakter sangat mirip dengan tanda aslinya. | \*, x , +, \|, o, asterisk, star, 10-pointed star, oplus, oplus\*, otimes, otimes\*, square, square\*, triangle, triangle\*, diamond, halfdiamond\*, halfsquare\*, right\*, left\*, Mercedes star, Mercedes star flipped, halfcircle, halfcircle\*, pentagon, pentagon\*, cubes. (cubes only work on 3d plots). |
| **colormap**             | skema warna yang digunakan dalam plot, dapat dipersonalisasi tetapi ada beberapa colormap yang telah ditentukan                      | hot, hot2, jet, blackwhite, bluered, cool, greenyellow, redyellow, violet.                                                                                                                                                                                                                                      |

## Bacaan lanjutan

Untuk informasi lebih lanjut lihat:

* [Menggunakan warna di LaTeX](/latex/id/pemformatan/13-using-colors-in-latex.md)
* [Paket TikZ](/latex/id/gambar-dan-tabel/05-tikz-package.md)
* [Mengeksternalkan pgfplots dan tikzpictures](/latex/id/pertanyaan-and-jawaban/60-i-have-a-lot-of-tikz-matlab2tikz-or-pgfplots-figures-so-i-m-getting-a-compilation-timeout.-can-i.md)
* [Menyisipkan Gambar](/latex/id/topik-lainnya/27-inserting-images.md)
* [Daftar tabel dan gambar](/latex/id/gambar-dan-tabel/03-lists-of-tables-and-figures.md)
* [Penempatan gambar dan tabel](/latex/id/gambar-dan-tabel/02-positioning-images-and-tables.md)
* [Menggambar diagram secara langsung di LaTeX](/latex/id/gambar-dan-tabel/04-picture-environment.md)
* [Fitur **pgfplots** dokumentasi paket](http://mirrors.ctan.org/graphics/pgf/contrib/pgfplots/doc/pgfplots.pdf).
* [Paket TikZ dan PGF: Manual untuk versi 3.0.0](http://mirror.utexas.edu/ctan/graphics/pgf/base/doc/pgfmanual.pdf)
* [Contoh TikZ dan PGF di TeXample.net](http://www.texample.net/tikz/examples/all/)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/id/bidang-khusus/08-pgfplots-package.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
