Oleh : Unung Istopo H
Perangkat yang diperlukan untuk memberikan training R cukup banyak, baik secara online maupun offline. Artikel ini akan membahas penggunaan package R2HTML dalam aplikasi R yang dapat membantu para trainer untuk menjelaskan fungsi-fungsi analisis R serta memberikan ruang dokumentasi yang menarik dalam format output HTML. Bagaimana caranya, mari kita simak.
Package R2HTML menyediakan dukungan dalam penulisan R Script yang menghasilkan output HTML. Melalui package ini kita mudah memberikan case bagaimana R Script dan outputnya (summary dan graph) mampu ditampilkan dalam mode tag-tag HTML.
Untuk menggunakan package ini maka lebih disukai yang telah mengenal HTML, namun bagi user yang belum mengenalnya pun dapat mengoperasikan melalui help yang telah disediakan serta contoh yang ada. HTML sendiri merupakan bahasa hipertext yang digunakan untuk publikasi di WWW (world wide web). Format HTML menggunakan tag, yang digunakan dalam struktur penulisannya, yaitu tag pembuka dan tag penutup. Misalnya untuk menuliskan kata dengan huruf tebal maka kita dapat buka dengan tag <strong> dan kita tutup dengan tag </strong>.
Struktur dasar HTML dapat diilustrasikan sebagai berikut :
<html>
<h1>Halaman Pertama HTML</h1>
<p>Kalimat pertama dimulai dengan kata</p>
<strong>tebal</strong>
<p>yang menggunakan tag h1, dan p yang digunakan untuk membuat judul dan paragraph.</p>
</html>
Baiklah, sekarang kita mencoba untuk membuat halaman-halaman web dengan menggunakan R. Untuk menambahkan argumen dalam halaman web maka kita dapat memanggil fungsi cat dengan parameter append TRUE.
Berikut ini contoh R Script untuk membuat halaman web dengan R.
>htmlfile = file.path('/var/www/html/RWeb/index.html')
>cat('<h1>Halaman Pertama HTML</h1>',file=htmlfile)
>cat('<p>Kalimat pertama dimulai dengan kata <strong>tebal</strong></p>',
+ append=TRUE,file=htmlfile)
>cat('<p>yang menggunakan tag h1,
+ dan p yang digunakan untuk membuat judul dan paragraph.</p>',
+ append=TRUE,file=htmlfile)
>cat('</html>',append=TRUE,file=htmlfile)
Hasilnya adalah sebagai berikut :

Namun, menuliskan per baris tag-tag HTML itu tentu tidak menyenangkan, sehingga R2HTML memberikan fungsi-fungsi dasar yang memudahkan user untuk membuat halaman HMTL dengan menggunakan R. Fungsi dasar R2HTML tersebut adalah sebagai berikut :
- HTML() : Fungsi umum di mana sub fungsi didefinisikan untuk semua kelas yang ada (matrix, lm, summary,…)
- HTMLbr() : Memasukkan tag HTML <br> untuk membuat kalimat dalam baris baru
- HTMLhr() : Memasukkan tag HTML <hr> untuk membuat garis horizontal yang memisahkan antar text
- HTMLInsertGraph() : Memasukkan tag HTML <img> untuk menambahkan grafik ke dalam report. Grafik ini seharusnya sudah dicreate sebelumnya dalam betuk GIF, JPEG atau PNG.
Berikut ini contoh R Script menggunakan fungsi R2HTML.
> require(R2HTML)
Loading required package: R2HTML
[1] TRUE
> .HTML.file = file.path('/var/www/html/RWeb/page2.html')
> HTML(as.title('Title of my report'),
+ append = FALSE)
> HTMLhr()
> HTML('Statistics Summary')
> HTML(summary(rnorm(100)))
Hasilnya adalah sebagai berikut :

Membangkitkan output HTML pada saat proses
R2HTML menyediakan fungsi yang cukup menarik, yang mampu menghasilkan output HTML dalam ruang yang interaktif. Sehingga memungkinkan kita untuk memberikan model pembelajaran mengenal R melalui web dengan R2HTML. Selain output analisis, output yang dihasilkan juga catatan R Script yang kita bikin, sehingga memudahkan kita untuk bahan dokumentasi. Ada dua perintah yang harus ada dalam proses ini, yaitu :
- HTMLStart()
- HTMLStop()
Dalam artikel, saya akan langsung memberi contoh bagaimana memanfaatkan R2HTML untuk belajar menggunakan R, dan saya lompati bagian proses apa saja yang dilakukan dalam HTMLStart() dan HTMLStop(). Semoga bagian tersebut bisa saya bahas dalam bagian lain.
Berikut ini contoh bagaimana melakukan implementasi package R2HTML.
> dir.create(file.path('/var/www/html/RWeb/R2HTML'))
> HTMLStart(file.path('/var/www/html/RWeb/R2HTML'),
+ echo = TRUE)
*** Output redirected to directory: /var/www/html/RWeb/R2HTML/
*** Use HTMLStop() to end redirection.[1] TRUE
HTML> data < - c(1:10,5,10:1)
HTML> summary(data)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 3.000 5.000 5.476 8.000 10.000
HTML> hist(data,col='gray')
HTML> HTMLplot()
[1] TRUE
HTML> HTMLStop()
[1] '/var/www/html/RWeb/R2HTML/index_main.html'
Hasilnya sebagai berikut :

Selanjutnya kita dapat mengembangkan dengan layout yang kita definisikan dulu ataupun melalui CSS (Cascade Style Sheet) untuk bentuk report layout.
Selamat ber-R2HTML ria.
Bahan dari artikel R2HTML karya :
Eric Lecautre
Institut de statistique, UCL, Belgium
