Kurs
Veri görselleştirme, veri bilimciler için temel bir beceridir. İstatistiği ve tasarımı anlamlı ve yerinde biçimlerde bir araya getirir. Bir yandan veri görselleştirme, doğru temsil ve veri yorumuna vurgu yapan grafiksel veri analizi biçimidir. Öte yandan veri görselleştirme, grafikleri çekici kılmak ve hem sonuçların anlaşılmasına hem de iletilmesine yardımcı olmak için iyi tasarım seçimlerine dayanır. Tüm bunların ötesinde, veri görselleştirmenin özünde görsel bir iletişim biçimi olması nedeniyle yaratıcılık unsuru da vardır.

Keşif amaçlı ve açıklayıcı görselleştirmeler arasındaki ayrımı anlamak önemlidir. Keşif amaçlı görselleştirmeler kolay üretilir, veri açısından yoğundur ve kendiniz ile çalışma arkadaşlarınız gibi küçük ve uzman bir kitleye yöneliktir — birincil amaçları grafiksel veri analizidir. Açıklayıcı görselleştirmeler ise emek yoğundur, veriye özeldir ve örneğin yayınlar veya sunumlarda daha geniş bir kitleye yöneliktir — iletişim sürecinin bir parçasıdır. Bir veri bilimci olarak, verileri hızla keşfedebilmeniz esastır; ancak sonuçlarınızı paydaşlara açıklama görevi de size verilecektir. İyi tasarım, kitleyi düşünmekle başlar — ve bazen bu kitle sadece kendimiz olur.

Saçılım Grafiği
Aşağıda, 62 memelinin ortalama beyin ve vücut ağırlıklarını içeren bir veri kümesi bulunuyor.
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
Buradaki ilişkiyi anlamak için en bariz ilk adım, aşağıda gösterildiği gibi bir saçılım grafiği oluşturmaktır:
ggplot(mammals, aes(x = body, y = brain)) +
geom_point()

İki memeli, Afrika ve Asya fillerinin hem beyin hem de vücut ağırlıkları çok büyüktür; bu da her iki eksende de pozitif çarpıklığa yol açar.
Doğrusal Model
Şimdi, doğrusal bir model uygulasaydık bu kötü bir seçim olurdu; çünkü birkaç aşırı değer büyük bir etkiye sahiptir.
ggplot(mammals, aes(x = body, y = brain)) +
geom_point(alpha = 0.6) +
stat_smooth(
method = "lm",
color = "red",
se = FALSE
)

Her iki değişkene log dönüşümü uygulamak daha iyi bir uyum sağlar.
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
)

Yani kaba bir keşif grafiğiyle başlasak da, bu grafik verilerimiz hakkında bizi bilgilendirdi ve anlamlı bir sonuca götürdü.
Anscombe’un Grafikleri
Bu isimsiz grafikte sunulduğu gibi bir doğrusal modeli hayal ettiğimizde, aşağı yukarı şöyle görünen verileri tanımladığımızı düşünürüz.

Ancak aynı model, farklı bir modele ihtiyaç duyan parabolik bir ilişki gibi çok farklı bir veri kümesini de tanımlıyor olabilir.

Ya da uç bir değerin büyük bir etki yaptığı veriler olabilir; aykırı değer çıkarıldığında bu durum netleşir.

Ve bazen model, aslında hiç ilişki olmayan bir durumu da tanımlayabilir; çünkü bazı uç değerler hatalı olabilir.

Verilerimizi çizmeden yalnızca sayısal çıktıya güenseydik, belirgin ve ilginç altta yatan eğilimleri kaçırmış olurduk.

Veri görselleştirmenin istatistik ve grafiksel veri analizine dayandığını, ancak bir miktar deneme-yanılma içeren yaratıcı bir süreç olduğunu görebiliriz.
Etkileşimli Örnek
Aşağıdaki örnekte, önce library() kullanarak ggplot2 paketini yükleyeceksiniz. Ardından, mtcars veri setinin yapısını keşfetmek için str() kullanacaksınız.
Son olarak, ggplot’u görselleştirip ggplot’un verilerle ne yaptığını anlamaya çalışacaksınız.
mtcars veri seti, Motor Trend dergisinin 1973 sayısından 32 otomobile ilişkin bilgileri içerir. Bu veri seti küçük, sezgiseldir ve çeşitli sürekli ve kategorik değişkenler barındırır.
# 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()
Yukarıdaki kodu çalıştırdığımızda aşağıdaki sonuç elde edilir:
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 ...

ggplot ile veri görselleştirme hakkında daha fazla bilgi edinmek için Rick Scavetta’nın hazırladığı ggplot2 ile Veri Görselleştirmeye Giriş dersimizden bu videoyu izleyin. Ayrıca pratik bir başvuru kaynağı olarak ggplot2 Hızlı Başvuru Kağıdını elinizin altında bulundurun.
Bu içerik, Rick Scavetta’nın ggplot2 ile Veri Görselleştirmeye Giriş dersinden alınmıştır.
