Kursus
Visualisasi data adalah keterampilan penting bagi data scientist. Ini menggabungkan statistika dan desain dengan cara yang bermakna dan tepat. Di satu sisi, visualisasi data adalah bentuk analisis data grafis yang menekankan representasi yang akurat serta interpretasi data. Di sisi lain, visualisasi data bergantung pada pilihan desain yang baik untuk membuat plot menarik dan membantu pemahaman serta komunikasi hasil. Di atas semua itu, ada unsur kreativitas, karena pada dasarnya visualisasi data adalah bentuk komunikasi visual.

Penting untuk memahami perbedaan antara visualisasi eksploratif dan eksplanatori. Visualisasi eksploratif mudah dibuat, kaya data, dan ditujukan untuk audiens spesialis kecil, seperti Anda dan rekan kerja—tujuan utamanya adalah analisis data secara grafis. Visualisasi eksplanatori memerlukan banyak usaha, spesifik terhadap data, dan ditujukan untuk audiens yang lebih luas, misalnya dalam publikasi atau presentasi—ini adalah bagian dari proses komunikasi. Sebagai data scientist, penting bagi Anda untuk dapat dengan cepat mengeksplorasi data, tetapi Anda juga akan diminta menjelaskan hasil kepada para pemangku kepentingan. Desain yang baik dimulai dengan memikirkan audiens—dan terkadang itu berarti diri kita sendiri.

Scatter Plot
Di bawah ini, kita memiliki dataset yang berisi rata-rata bobot otak dan tubuh dari 62 mamalia.
MASS::mammals
body brain
Arctic fox 3.385 44.50
Owl monkey 0.480 15.50
Mountain beaver 1.350 8.10
Cow 465.000 423.00
Grey wolf 36.330 119.50
Goat 27.660 115.00
Roe deer 14.830 98.20
...
Pig 192.000 180.00
Echidna 3.000 25.00
Brazilian tapir 160.000 169.00
Tenrec 0.900 2.60
Phalanger 1.620 11.40
Tree shrew 0.104 2.50
Red fox 4.235 50.40
Untuk memahami hubungan di sini, langkah pertama yang paling jelas adalah membuat scatter plot, seperti yang ditunjukkan di bawah:
ggplot(mammals, aes(x = body, y = brain)) +
geom_point()

Dua mamalia, Gajah Afrika dan Gajah Asia, memiliki bobot otak dan tubuh yang sangat besar, sehingga menyebabkan skew positif pada kedua sumbu.
Model Linear
Sekarang, jika kita menerapkan model linear, itu akan menjadi pilihan yang kurang tepat karena beberapa nilai ekstrem memiliki pengaruh besar.
ggplot(mammals, aes(x = body, y = brain)) +
geom_point(alpha = 0.6) +
stat_smooth(
method = "lm",
color = "red",
se = FALSE
)

Menerapkan transformasi log pada kedua variabel memungkinkan kecocokan yang lebih baik.
ggplot(mammals, aes(x = body, y = brain)) +
geom_point(alpha = 0.6) +
coord_fixed() +
scale_x_log10() +
scale_y_log10() +
stat_smooth(
method = "lm",
color = "#C42126",
se = FALSE,
size = 1
)

Jadi, meskipun kita memulai dengan plot eksploratif yang kasar, plot tersebut memberi informasi tentang data kita dan mengarah pada hasil yang bermakna.
Plot Anscombe
Saat kita membayangkan model linear, seperti yang ditampilkan pada plot anonim ini, kita membayangkan bahwa kita sedang menggambarkan data yang tampak seperti ini.

Namun model yang sama bisa saja menggambarkan sekumpulan data yang sangat berbeda, seperti hubungan parabola, yang memerlukan model berbeda.

Atau data di mana suatu nilai ekstrem memiliki efek besar, yang menjadi jelas ketika pencilan tersebut dihapus.

Dan terkadang, model mungkin menggambarkan suatu hubungan padahal sebenarnya tidak ada sama sekali karena beberapa nilai ekstrem bisa jadi tidak benar.

Jika kita hanya mengandalkan keluaran numerik tanpa memplot data, kita akan melewatkan tren mendasar yang berbeda dan menarik.

Kita dapat melihat bahwa visualisasi data berakar pada statistika dan analisis data grafis, tetapi ini juga merupakan proses kreatif yang melibatkan sejumlah coba-coba.
Contoh Interaktif
Pada contoh berikut, pertama Anda akan memuat paket ggplot2 menggunakan library(). Lalu, Anda akan menggunakan str() untuk mengeksplorasi struktur dataset mtcars.
Terakhir, Anda akan memvisualisasikan ggplot dan mencoba memahami apa yang dilakukan ggplot terhadap data.
Anda akan menggunakan dataset mtcars yang berisi informasi tentang 32 mobil dari edisi majalah Motor Trend tahun 1973. Dataset ini kecil, intuitif, dan berisi beragam variabel kontinu dan kategorikal.
# Load the ggplot2 package
library(ggplot2)
# Explore the mtcars data frame with str()
str(mtcars)
# Execute the following command
p <- ggplot(mtcars, aes(cyl, mpg)) +
geom_point()
Saat kita menjalankan kode di atas, hasilnya sebagai berikut:
data.frame': 32 obs. of 11 variables:
$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
$ disp: num 160 160 108 258 360 ...
$ hp : num 110 110 93 110 175 105 245 62 95 123 ...
$ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
$ wt : num 2.62 2.88 2.32 3.21 3.44 ...
$ qsec: num 16.5 17 18.6 19.4 17 ...
$ vs : num 0 0 1 1 0 1 0 1 1 1 ...
$ am : num 1 1 1 0 0 0 0 0 0 0 ...
$ gear: num 4 4 4 3 3 3 3 4 4 4 ...
$ carb: num 4 4 1 1 2 1 4 2 2 4 ...

Untuk mempelajari lebih lanjut tentang visualisasi data dengan ggplot, silakan lihat video dari kursus kami Introduction to Data Visualization with ggplot2. Juga, simpan Lembar Contekan ggplot2 kami sebagai referensi praktis.
Konten ini diambil dari kursus DataCamp Introduction to Data Visualization with ggplot2 oleh Rick Scavetta.
