> 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/texlive/id/keterampilan/kode-r-knitr.md).

# Kode R (knitr)

Overleaf menyediakan integrasi dengan **knitr**, yang memungkinkan Anda menambahkan kode R ke dokumen LaTeX Anda untuk menghasilkan keluaran dinamis.

Dokumen yang berisi kode R harus disimpan dengan ekstensi `.Rtex` atau `.Rnw`, jika tidak, kode tidak akan berfungsi. Mari kita lihat contohnya:

{% code overflow="wrap" %}

```latex
\documentclass{article}
\begin{document}

Anda dapat mengetik perintah R di dokumen \LaTeX{} Anda yang akan diproses dan keluarannya disertakan dalam dokumen:

<<>>=
# Buat urutan angka
X = 2:10

# Tampilkan ukuran statistik dasar
summary(X)

@
\end{document}
```

{% endcode %}

![KnitrDemo1.png](https://3502988919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVetOkhFZmAC8QCQK0Pi7%2Fuploads%2F4rB1ItV9jgLU4dT6o3Hf%2FKnitrDemo1.png?alt=media\&token=5b2d4df8-8de9-4bdd-be61-0a3992026edf)

[Buka ini `knitr` contoh ini di Overleaf](https://www.overleaf.com/project/new/template/20421?id=69881107\&templateName=Knitr+demo+1\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

Seperti yang dapat Anda lihat, teks di antara karakter `<<>>=` dan `@` adalah kode R. Kode ini dan keluarannya dicetak dalam format seperti daftar. Potongan kode ini dapat menerima beberapa parameter tambahan untuk menyesuaikan keluaran dinamis, seperti dijelaskan pada bagian berikutnya.

### Potongan kode

Blok kode seperti yang disajikan pada bagian sebelumnya biasanya disebut *chunk*. Anda dapat menetapkan beberapa opsi tambahan dalam chunk knitr. Lihat contoh di bawah:

{% code overflow="wrap" %}

```latex
\documentclass{article}
\begin{document}

Anda dapat mengetik perintah R di dokumen \LaTeX{} Anda yang akan diproses dan keluarannya disertakan dalam dokumen:

<<echo=FALSE, cache=TRUE>>=
# Buat urutan angka
X = 2:10

# Tampilkan ukuran statistik dasar
summary(X)

@
\end{document}
```

{% endcode %}

![KnitrDemo2.png](https://3502988919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVetOkhFZmAC8QCQK0Pi7%2Fuploads%2FHtobrK1TjY4SG4ax2BH5%2FScreenshot%202025-12-16%20143420.png?alt=media\&token=50675660-f20f-44d3-be60-fb91b8dbd255)

[Buka ini `knitr` contoh ini di Overleaf](https://www.overleaf.com/project/new/template/20423?id=69885763\&templateName=Knitr+demo+2\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

Ada dua opsi tambahan yang diteruskan di dalam `<<` dan `>>`.

* `echo=FALSE`Ini menyembunyikan kode dan hanya mencetak keluaran yang dihasilkan oleh R.
* `cache=TRUE`Jika cache disetel ke true, chunk tidak dijalankan, hanya objek yang dihasilkannya. Ini menghemat waktu jika data dalam chunk tersebut tidak berubah.

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p><em>Perhatikan bahwa opsi cache=TRUE saat ini tidak didukung di Overleaf, tetapi seharusnya berfungsi secara lokal.</em></p></div>

Lihat [panduan referensi](https://learn.overleaf.com/learn/Knitr#Reference_guide) untuk opsi lainnya.

### Perintah sebaris

Objek yang dihasilkan dalam sebuah chunk dapat diakses dan dicetak sebaris.

{% code overflow="wrap" %}

```latex
\documentclass{article}
\begin{document}

Anda dapat mengetik perintah R di dokumen \LaTeX{} Anda yang akan diproses dan keluarannya disertakan dalam dokumen:

<<echo=FALSE, cache=TRUE>>=
# Buat urutan angka
X = 2:10

# Tampilkan ukuran statistik dasar
summary(X)

@

Jadi, rata-rata datanya adalah $\Sexpr{mean(X)}$
\end{document}
```

{% endcode %}

![KnitrDemo3.png](https://3502988919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVetOkhFZmAC8QCQK0Pi7%2Fuploads%2Fbyz9VKDCCPcoWHbznSJ4%2FScreenshot%202025-12-16%20143647.png?alt=media\&token=9d5ef4de-f413-4bf2-83c8-bf2171f50dee)

[Buka ini `knitr` contoh ini di Overleaf](https://www.overleaf.com/project/new/template/20425?id=69886866\&templateName=Knitr+demo+3\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

Perintah `\Sexpr{mean(X)}` mencetak keluaran yang dikembalikan oleh kode R `mean(X)`. Di dalam kurung kurawal, perintah R apa pun dapat diberikan.

### Plot

Plot juga dapat ditambahkan ke dokumen knitr, seperti pada contoh ini:

{% code overflow="wrap" %}

```latex
\documentclass{article}
\begin{document}

<<plot1, fig.pos="t", fig.height=4, fig.width=4, fig.cap="First plot">>=

xdata = read.csv(file="data.txt", head=TRUE,sep=" ")

hist(xdata$data, main="Overleaf histogram", xlab="Data")

@

Gambar \ref{fig:plot1} adalah histogram sederhana.

\end{document}
```

{% endcode %}

![KnitrDemo4.png](https://3502988919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVetOkhFZmAC8QCQK0Pi7%2Fuploads%2F5NI4NOJICjnYf8Z2Me1b%2FScreenshot%202025-12-16%20143811.png?alt=media\&token=d937786f-da22-4cbd-9adf-f277ec9f77c4)

[Buka ini `knitr` contoh ini di Overleaf](https://www.overleaf.com/project/new/template/20427?id=69890965\&templateName=Knitr+demo+3\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

Histogram ini menggunakan data yang disimpan dalam "data.txt", yang disimpan di direktori kerja saat ini. Beberapa opsi yang terkait dengan gambar diteruskan ke chunk.

`plot1`Ini adalah label yang digunakan untuk mereferensikan plot. Awalan "fig:" wajib. Anda dapat melihat pada contoh bahwa gambar direferensikan dengan `\ref{fig:plot1}`.`fig.pos="t"` parameter penempatan. Ini sama seperti yang digunakan dalam [lingkungan figure](https://learn.overleaf.com/learn/Positioning_images_and_tables#The_figure_environment).`fig.height=4, fig.width=4`Lebar dan tinggi gambar.`fig.cap="First plot"`Keterangan untuk gambar.

### Skrip R eksternal

Anda dapat mengimpor bagian dari skrip R eksternal ke dalam dokumen knitr. Ini sangat membantu karena cukup umum untuk menulis dan men-debug skrip dalam program eksternal sebelum menyertakannya di dokumen Anda.

Misalkan kita memiliki kode R berikut dalam file bernama `mycode.R` yang kita sertakan dalam dokumen LaTeX kita:

```r
## ---- myrcode1
# Buat urutan angka
 X = 2:10

## ---- myrcode2
# Tampilkan ukuran statistik dasar
summary(X)
```

Perhatikan baris-baris berikut:

```r
## ---- myrcode1
```

dan

```r
## ---- myrcode2
```

Ini menandai awal sebuah chunk kode dan wajib jika Anda ingin menggunakan skrip ini dalam dokumen kita, seperti ditunjukkan pada fragmen kode berikut:

```r
Chunk di bawah tidak akan dicetak

<<echo=FALSE, cache=FALSE>>=
read_chunk("mycode.R")
@

Kode harus muncul di sini

<<myrcode2>>=

@
```

![KnitrDemo5.png](https://3502988919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVetOkhFZmAC8QCQK0Pi7%2Fuploads%2FPzKSGsFTMdhs9K8dE8Ny%2FKnitrDemo5.png?alt=media\&token=9c32c381-7621-4b7d-9d73-c1e7a0b6aac8)

Chunk pertama tidak dicetak dan hanya digunakan untuk mengimpor skrip dengan perintah `read_chunk("mycode.R")` . Itulah sebabnya opsi `echo=FALSE` disetel. Selain itu, skrip tidak boleh di-cache. Setelah skrip diimpor, Anda dapat mencetak sebuah chunk menggunakan label yang Anda tetapkan setelah `## ----`. Dalam kasus ini, itu adalah `myrcode2`.

Kami telah menempatkan semua fragmen kode artikel ke dalam sebuah proyek yang [dapat Anda Buka di Overleaf](https://www.overleaf.com/project/new/template/20429?id=69894649\&templateName=Knitr+full+demo\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=) .

### Panduan referensi

Beberapa opsi chunk:

* `results`. Mengubah perilaku hasil yang dihasilkan oleh kode R. Nilai yang mungkin adalah:
  * `markup` Gunakan LaTeX untuk memformat keluaran.
  * `asis` Cetak hasil mentah dari R.
  * `hold` Tahan hasil keluaran dan letakkan di akhir chunk.
  * `hide` Sembunyikan hasil.
* `echo`. Apakah menyertakan kode sumber R. Parameter lain meliputi:
  * `echo=2:3` mencetak hanya baris kedua dan ketiga;
  * `echo=-2:-3` hanya mengecualikan baris kedua dan ketiga.
* `cache`. Apakah akan menyimpan cache chunk kode. Nilai yang mungkin adalah: `TRUE` dan `FALSE`
* `highlight`. Apakah akan menyorot kode sumber. Nilai yang mungkin adalah: `TRUE` dan `FALSE`
* `background`. Warna latar belakang chunk. Format rgb dan HTML dapat digunakan. Nilai defaultnya adalah *"#F7F7F7"*.


---

# 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/texlive/id/keterampilan/kode-r-knitr.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.
