logoR UNEJ PONSTAT

Laboratorium Statistika, FMIPA Universitas Jember Jalan Kalimantan 27 Jember 68121

GRAFIK DENGAN R

Oleh I Made Tirta, Januari 2015, alamat: Laboratorium Statistika, Jurusan Matematika FMIPA UNiversitas Jember.

Latar belakang

Analisis data dewasa ini tidak cukup hanya dengan menghitung atau melaporkan angka-angka statistika sebagai proses pengujian hipotesis, tetapi akan sangat membantu apabila juga dilengkapi dengan visualisasi grafik, baik terkait, eksplorasi, diagnostik maupun hasil uji hipotesis. R menyediakan banyak ragam grafik untuk berbagai keperluan tadi. Dalam kenyataan, salah atu keunggulan bahasa S (termasuk S+ dan R), adalah kemampuan visualisasi grafiknya.

Tujuan

Tujuan aktivitas ini adalah agar pembaca/ mahasiswa diakhir kegiatan, mampu:
  1. membuat berbagai layout grafik dengan prinsip matriks, misalnya 2$\times$3 dan seterusnya
  2. membuat berbagai layout gabungan antara layar besar (penuh) dan layar-layar kecil
  3. membuat grafik histogram, box-plot, qqplot dengan menggunakan paket grahics
  4. membuat grafik diagram pencar dengan beberapa variasi penempatan histogram (dari variabel X dan Y, menggunakan paket grahics
  5. membuat histogram menggunakan paket qqplot dengan mempertimbangkan adanya kelompok dalam data
  6. membuat diagram pencar menggunakan paket qqplot dengan mempertimbangkan adanya kelompok dan pelicin smoother, glm maupun gam.

Materi bahasan

  1. Layout grafik tunggal
  2. Layout grafik ganda tipe matriks
  3. Layout grafik ganda tipe split layar
  4. Layout grafik ganda tipe gabungan matriks dan split
  5. Grafik kompleks dengan ggplot
  6. Aplikasi pada Data Simulasi
  7. Rangkuman
  8. Daftar Bacaan
  9. Tugas

Layout Grafik Tunggal

Selanjutnya grafik standar dibuat dengan perintah
plot(x,y,type=...,main=...,lty=...,pch=...,col=...)
Contoh tampilan grafik tunggal
Tipe grafik , Tipe garis dan Tipe titik

Layout tipe Matriks

Kita dapat membuat bk sub grafik dengan layout seperti matriks dengan b baris dan k kolom dengan perintah

par(mfrow=c(b,k))
Banyaknya baris dan banyaknya kolom
Perhatikan nomor layar dan posisinya menurut baris dan kolom

Split Layar

Kita juga dapat membuat bk sub grafik dengan layout tidak seperti matriks, yaitu jumlah baris per kolom sama, dengan perintah

split.screen(c(b, k))
split.screen(c(b1, k1), screen = ...)
screen(i)
plot(...)
screen diisi dengan nomor/posisi screen yang akan dibagi lagi (perhatikan posisi tampilan/layar/screen pada grafik di atas). Untuk membuat grafik pada tampilan tertentu, pilih screen dengan screen(n) n adalah nomor tampilan. Misalkan dari layout yang telah dibuat di atas, pada salah satu tampilan layar kita membagi lagi menjadi beberapa tampilan yang lebih kecil. Akan ada pesan error jika pembagian layar terlalu kecil untuk dibuat
Split I: nomor layar , banyaknya sub-baris dan sub-kolom
Split II: nomor layar , banyaknya sub-baris dan sub-kolom
Perhatikan bahwa secara default no layar yang sudah dibagi akan terhapus (tidak bisa diisi grafik).

Kombinasi Layar besar dan kecil

Kita juga dapat membiarkan tampilan/layar yang dibagi tidak terhapus, sebaliknya menghapus sebagian layar-layar kecil yang tidak diperlukan sehingga terjadi gabungan layar besar dan kecil

split.screen(c(b, k), screen=1, erase=FALSE)
screen(i)
erase.screen(n = ) # no screen yang dihapus
close.screen(n, all.screens = FALSE)
screen(j) # no screen tempat menaruh plot
plot(...)
screen diisi dengan nomor/posisi screen yang akan dibagi lagi (perhatikan posisi tampilan/layar/screen pada grafik di atas). Untuk membuat grafik pada tampilan tertentu, pilih screen dengan screen(n) n adalah nomor tampilan. Misalkan dari layout yang telah dibuat di atas, pada salah satu tampilan layar kita membagi lagi menjadi beberapa tampilan yang lebih kecil. Akan ada pesan error jika pembagian layar terlalu kecil untuk dibuat
Posisi histogram X: , histogram Y: , Ukuran sub-baris dan sub-kolom Garis regresi linier ,

Grafik dengan ggplot2()

Sintaks untuk membuat grafik dengan ggplot2 adalah sebagai berikut:
qplot(x=..., y=..., data=..., color=...)
ggplot(datasim, aes_string(x=..., y=...)) + geom_point()
                + aes_string(...) + geom_smooth(,method="lm")
dengan
    color = salah satu variabel kualitatif (faktor)
    aes_string = salah satu variabel kualitatif (faktor)
    geom_smooth = pengepasan regresi (lm=linear, rlm=robust linear, atau yang lainnya)

Aplikasi pada Data Simulasi

Ada beberapa grafik praktis yang bisa ditempatkan pada masing-masing tampilan layar yang telah dibahas. Ada empat jenis grafik yang biasa dipakai
  • 1. Histogram
  • 2. BoxPlot
  • 3. QQPlot
  • 3. Diagram Pencar
  • Ringkasan Data yang ada

    Data

    
    Dengan matriks korelasi
    
    
    
    Diagram korelasi terdapat pada paket psych dengan sintaks
    pairs.panels(as.matrix(data),smooth=FALSE, lm=TRUE,
       main=paste("Judul "),col="blue", cex=0.5,hist.col="darkred")
    
    dengan grafik korelasi

    Grafik Univariat dengan Grup

    Untuk memunculkan grafik ini, harus ada pilihan grup pada grafik sebelumnya di atas (bukan tanpa grup).
    Contoh Grafik Univariat dengan Kelompok
    ,

    Grafik Diagram Pencar dengan ggplot2

    Dari contoh grafik di atas kita bisa menghasilkan grafik diagram pencar dengan menambahkan variabel eksplanatori. Selanjutnya kompleksitas dari diagram pencar bisa ditambahkan sesuai kebutuhan (seperti variabel kualitatif/kelompok, smoother, dll))
    Grafik Diagram Pencar dengan ggplot
    Regresi/smoother ,

    Grafik dengan Google Chart Visual (To be extended ...)

    Contoh (Demo) Grafik memanfaatkan Grafik dari Google

    Rangkuman (To Come)

    Sumber Bacaan Teori:

      [1] Tirta, IM 2009. "Bab 1: Pengantar R" dalam Analisis Regresi dengan R. Penerbitan UNiversitas Jember
      [2] Wickham H.2009. ggplot2 Elegant Graphic for Data Analysis. Springer
      [3] Muenchen. Graphics, ggplot2

    Tugas

    Naskah ini dibuat dengan tujuan utama sebagai dokumen contoh (IMT).