Pertanyaannya sudah tua, tetapi masih menerima banyak perhatian. Karena jawaban yang ada sudah usang, berikut solusi yang lebih terkini:
Mengubah ukuran gambar lokal
Pada knitr
1,12 , ada fungsinya include_graphics
. Dari ?include_graphics
(beri penekanan pada saya):
Keuntungan utama menggunakan fungsi ini adalah portable dalam arti berfungsi untuk semua format dokumen yang knitr
mendukung, jadi Anda tidak perlu berpikir jika Anda harus menggunakan, misalnya, sintaksis LaTeX atau Markdown, untuk menanamkan eksternal gambar. Opsi chunk terkait dengan output grafis yang bekerja untuk plot R normal juga bekerja untuk gambar-gambar ini, seperti out.width
dan out.height
.
Contoh:
```{r, out.width = "400px"}
knitr::include_graphics("path/to/image.png")
```
Keuntungan:
- Atas jawaban agastudy : Tidak perlu untuk perpustakaan eksternal atau untuk rastering ulang gambar.
- Atas jawaban Shruti Kapoor : Tidak perlu menulis HTML secara manual. Selain itu, gambar termasuk dalam versi file yang lengkap.
Termasuk gambar yang dihasilkan
Untuk menyusun lintasan ke plot yang dihasilkan dalam chunk (tetapi tidak termasuk), opsi chunk opts_current$get("fig.path")
(path ke direktori gambar) serta opts_current$get("label")
(label chunk saat ini) mungkin berguna. Contoh berikut digunakan fig.path
untuk memasukkan gambar kedua dari dua yang dihasilkan (tetapi tidak ditampilkan) dalam potongan pertama:
```{r generate_figures, fig.show = "hide"}
library(knitr)
plot(1:10, col = "green")
plot(1:10, col = "red")
```
```{r}
include_graphics(sprintf("%sgenerate_figures-2.png", opts_current$get("fig.path")))
```
Pola umum dari path gambar adalah [fig.path]/[chunklabel]-[i].[ext]
, di mana chunklabel
label chunk di mana plot telah dihasilkan, i
adalah indeks plot (dalam chunk ini) dan ext
merupakan ekstensi file (secara default png
dalam dokumen RMarkdown).