Dalam analisis data, scatter plot adalah salah satu jenis diagram yang paling umum digunakan untuk menganalisis hubungan antara dua variabel numerik. Namun, dalam beberapa kasus, kita memerlukan scatter plot yang dapat menampilkan grup atau kategori data. Pada artikel ini, kita akan belajar cara membuat scatter plot dengan group menggunakan ggplot2.

Contoh Data

Kita akan menggunakan contoh data yang terdiri dari dua variabel numerik dan satu variabel kategorik yang merepresentasikan grup. Berikut adalah contoh data yang kita akan gunakan:

set.seed(1)

x <- runif(500)
y <- 5 * x ^ 2 + rnorm(length(x), sd = 2)
group <- ifelse(x < 0.4, "A",
 ifelse(x > 0.8, "C", "B"))
x <- x + runif(length(x), -0.2, 0.2)

df <- data.frame(x = x, y = y, group = group)

Membuat Scatter Plot dengan Grup

Untuk membuat scatter plot dengan grup, kita hanya perlu memasukkan variabel kategorik ke dalam argumen color aes().

library(ggplot2)

ggplot(df, aes(x = x, y = y, color = group)) +
 geom_point()

Mengubah Warna

Warna default dapat diubah dengan menggunakan scale_color_manual dan memasukkan vektor warna ke dalam argumen values.

cols <- c("#1170AA", "#55AD89", "#EF6F6A")

ggplot(df, aes(x = x, y = y, color = group)) +
 geom_point() +
 scale_color_manual(values = cols)

Mengubah Bentuk dan Ukuran

Bentuk default dari observasi adalah lingkaran yang terisi, tetapi kita dapat memilih simbol lain dengan menggunakan shape. Ukuran simbol juga dapat diubah dengan menggunakan size.

ggplot(df, aes(x = x, y = y, color = group)) +
 geom_point(shape = 17, size = 2)

Mengubah Bentuk berdasarkan Grup

Jika kita ingin menampilkan bentuk yang berbeda untuk setiap grup, kita dapat memasukkan variabel grouping ke dalam argumen shape aes().

ggplot(df, aes(x = x, y = y, color = group,
 shape = group)) +
 geom_point(size = 2)

Kustomisasi Legenda

Legenda yang dibuat secara otomatis oleh ggplot2 dapat dikustomisasi dengan menggunakan guides() dan memasukkan argumen title.

ggplot(df, aes(x = x, y = y, color = group)) +
 geom_point(size = 2) +
 guides(colour = guide_legend(title = "Title"))

Menghapus Legenda

Jika kita tidak ingin menampilkan legenda, kita dapat mengatur posisi legenda menjadi "none" dengan menggunakan theme().

ggplot(df, aes(x = x, y = y, color = group)) +
 geom_point(size = 2) +
 theme(legend.position = "none")

Dalam artikel ini, kita telah belajar cara membuat scatter plot dengan grup menggunakan ggplot2. Kita juga telah belajar cara mengubah warna, bentuk, dan ukuran simbol, serta kustomisasi legenda. Semoga artikel ini dapat membantu Anda dalam menganalisis data statistik.