Universitas : UIN Maulana Malik Ibrahim Malang

Jurusan : Teknik Informatika

Pengantar Tentang Visualisasi Data

Visualisasi data merupakan bagian yang sangat penting untuk mengkomunikasikan hasil analisa yang telah kita lakukan. Selain itu, komunikasi juga membantu kita untuk memperoleh gambaran terkait data selama proses analisa data sehingga membantu kita dalam memutuskan metode analisa apa yang dapat kita terapkan pada data tersebut.

R memiliki library visualisasi yang sangat beragam, baik yang merupakan fungsi dasar pada R maupun dari sumber lain seperti ggplot dan lattice. Seluruh library visualisasi tersebut memiliki kelebihan dan kekurangannya masing-masing.

Pada chapter ini kita tidak akan membahas seluruh library tersebut. Kita akab berfokus pada fungsi visualisasi dasar bawaan dari R. kita akan mempelajari mengenai jenis visualisasi data sampai dengan melakukan kustomisasi pada parameter grafik yang kita buat.

Visualisasi Data Menggunakan Fungsi plot()

Fungsi plot() merupakan fungsi umum yang digunakan untuk membuat plot pada R. Format dasarnya adalah sebagai berikut:

plot(x, y, type="p")

Catatan:

  • x dan y: titik koordinat plot Berupa variabel dengan panjang atau jumlah observasi yang sama.

  • type: jenis grafik yang hendak dibuat. Nilai yang dapat dimasukkan antara lain:

    • type=“p” : membuat plot titik atau scatterplot. Nilai ini merupakan default pada fungsi plot().

    • type=“l” : membuat plot garis.

    • type=“b” : membuat plot titik yang terhubung dengan garis.

    • type=“o” : membuat plot titik yang ditimpa oleh garis.

    • type=“h” : membuat plot garis vertikal dari titik ke garis y=0.

    • type=“s” : membuat fungsi tangga.

    • type=“n” : tidak membuat grafik plot sama sekali, kecuali plot dari axis. Dapat digunakan untuk mengatur tampilan suatu plot utama yang diikuti oleh sekelompok plot tambahan.

Untuk lebih memahaminya berikut penulis akan sajikan contoh untuk masing-masing grafik tersebut. Berikut adalah contoh sintaks dan hasil plot yang disajikan pada Gambar 3.1:

# membuat vektor data 
x <- c(1:10); y <- x^2

# membagi jendela grafik menajdi 2 baris dan 4 kolom
par(mfrow=c(2,4))

# loop
type <- c("p","l","b","o","h","s","n")
for (i in type){
  plot(x,y, type= i,
       main= paste("type=", i))
}

Gambar 3.1: Plot berbagai jenis setting type

Pada contoh selanjutnya kita akan mencoba membuat kembali data yang akan kita plotkan. Data pada contoh kali ini merupakan data suatu fungsi matematika. Berikut adalah sintaks yang digunakan:

set.seed(123)
x <- seq(from=0, to=10, by=0.1)
y <- x^2*exp(-x/2)*(1+rnorm(n=length(x), mean=0, sd=0.05))

par(mfrow=c(1,2),
    # mengatur margin grafik
    mar=c(4,4,1.5,1.5),
    # mengatur margin sumbu
    mex=0.8,
    # arah tick sumbu koordinat
    tcl=0.3)
plot(x, y, type="l")
plot(x, y, type="o")

Gambar 3.2: Plot fungsi matematika

Fungsi lain yang dapat digunakan untuk membuat kurva suatu persamaan matematis adalah fungsi curve(). Berbeda dengan fungsi plot() yang perlu menspesifikasi objek pada sumbu x dan y, fungsi curve() hanya perlu menspesifikasi objek sumbu x saja. Format fungsi curve() adalah sebagai berikut:

curve(expr, from = NULL, to = NULL, add = FALSE)

Catatan:

  • expr: persamaan matematika

  • from dan to: nilai awal dan akhir (maksimum atau minimum)

  • add: nilai logik yang menentukan apakah kurva perlu ditambahkan kedalam kurva sebelumnya.

Berikut adalah contoh visualisasi menggunakan fungsi curve():

par(mfrow=c(1,2),
    # mengatur margin grafik
    mar=c(4,4,1.5,1.5),
    # mengatur margin sumbu
    mex=0.8,
    # arah tick sumbu koordinat
    tcl=0.3)

# Grafik kiri
curve(expr=x^2*exp(-x/2), 
      from=0, to=10)

# Grafik kanan
plot(x, y, pch=19, cex=0.7,
     xlab="Waktu (detik)",
     ylab="Sinyal Intensitas")
curve(expr=x^2*exp(-x/2), 
      from=0, to=10, add=TRUE)

Gambar 3.3: Visualisasi menggunakan fungsi curve (sebelah kiri) dan visualisasi menggunakan fungsi plot dan curve (sebelah kanan)

REFERENSI

https://bookdown.org/moh_rosidi2610/Metode_Numerik/dataviz.html

_________________________________________________________________________________________________________

Kunjungi Rpubs saya untuk melihat penjelasan yang lain <https://rpubs.com/henyrimadana>

_________________________________________________________________________________________________________