Kali ini kita akan belajar mengenai penggunaan fungsi plot() pada R.

Plot merupakan fungsi dasar yang penggunaan sangat luas dan penting sekali terutama untuk visualisasi data atau menggambarkan data agar lebih mudah dilihat, dipahami, atau dijelaskan. bukan melulu angka yang terkadang membuat bosan dan pusing. Data yang divisualisasikan terkait apapun misalkan hasil penelitian, percobaan, dan lain-lain.

baik, kita mulai langsung ke lapangan. ada banyak jenis plot yang bisa dipakai, tergantung dari kebutuhan saja. berikut ini jenis-jenis plot dasar yaitu type p, l, b, o, h, s, n.

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

# membagi window grafik menjadi 2 baris dan 4 kolom
par(mfrow=c(2,4))

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

nah, dari jenis-jenis di atas, coba kita menampilkan fungsi matematis menjadi plot type l dan type o

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")

Fungsi lain untuk visualisasi data adalah fungsi curve(). Perbedaan fungsi curve() dan fungsi plot() adalah, curve() hanya perlu menspesifikasi objek sumbu x saja sedangkan fungsi plot() perlu menspesifikasi objek pada sumbu x dan y. Berikut ini contoh visualisasinya. Sebelah kiri adalah curve, sebelah kanan adalah kombinasi antara curve dan plot.

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)

Selain kedua jenis fungsi di atas, adalagi jenis visualisasi yang lain yaitu fungsi barplot(). Kita gunakan dataset VADeaths untuk menyajikannya biar lebih mudah dipahami.

VADeaths
##       Rural Male Rural Female Urban Male Urban Female
## 50-54       11.7          8.7       15.4          8.4
## 55-59       18.1         11.7       24.3         13.6
## 60-64       26.9         20.3       37.0         19.3
## 65-69       41.0         30.9       54.6         35.1
## 70-74       66.0         54.3       71.1         50.0
par(mfrow=c(1,2))
barplot(VADeaths[, "Rural Male"], main="a")
barplot(VADeaths[, "Rural Male"], main="b", horiz=TRUE)

agar lebih menarik kita coba kasih warna

par(mfrow=c(1,1))
barplot(VADeaths[, "Rural Male"],
        # ubah warna ouline menjadi steelblue
        border="steelblue",
        # ubah wana box
        col= c("grey", "yellow", "steelblue", "green", "orange"),
        # ubah nama grup dari A sampai E
        names.arg = LETTERS[1:5],
        # ubah orientasi menajadi horizontal
        horiz=TRUE)

Baik, itu barplot yang hanya tunggal , lalu bagaimana jika dengan grouped bar plot atau multiple group? ada dua pengaturan posisi yaitu stacked bar plot (plot yang menumpuk pada masing-masing grup) dan grouped bar (dikumpulkan masing-masing grup secara sejajar).Di bawah ini contohnya.

# staked
barplot(VADeaths,
         col = c("lightblue", "mistyrose", "lightcyan", 
                 "lavender", "cornsilk"),
        legend = rownames(VADeaths))

# grouped
barplot(VADeaths,
         col = c("lightblue", "mistyrose", "lightcyan", 
                 "lavender", "cornsilk"),
        legend = rownames(VADeaths), beside = TRUE)

Setelah itu ketika kita ingin memvisualisasi menggunakan model histogram maka bisa menggunakan fungsi hist().

hist(x, breaks="Sturges")

hist(trees$Height)

Dan satu lagi jenis visualisasi yaitu density. berikut ini contohnya.

# menghitung kernel density
dens <- density(trees$Height)

# plot densitas dengan outline merah
plot(dens,col="red")

ketika Histogram dan plot density digabung.

# menghitung kernel density
dens <- density(trees$Height)

# histogram
hist(trees$Height, freq=FALSE, col="steelblue")

# tambahkan density plot
polygon(dens, border="red")

Sekian tulisan kali ini. kita bahas hal menarik lagi di lain materi.

Referensi : https://bookdown.org/moh_rosidi2610/