Nitel bir örnek
Son olarak, kategorik bir değişkene örnek bakalım. land_cover raster’ı, yeryüzü yüzeyinin karelere bölünmüş bir sınıflandırmasını içeriyor. land_cover'a yazdırarak göz at:
land_cover
values değerlerinin sayısal olduğunu, ancak bu sayıların kategorilere eşlendiği attributes bulunduğunu fark edeceksin (tıpkı faktörlerde olduğu gibi).
Kategorik değişkenler için renk seçimi, görselin amacına oldukça bağlıdır. Kategorilerin yaklaşık olarak eşit görsel ağırlığa sahip olmasını istediğinde — yani bir kategorinin diğerlerinden daha fazla öne çıkmamasını istediğinde — bir yaklaşım, farklı tonlarda (hue) ama aynı kroma (canlılık ölçüsü) ve açıklıkta (lightness) renkler kullanmaktır (bu, ggplot2'de ayrık renk ölçekleri için varsayılandır ve hcl() fonksiyonu ile üretilebilir).
RColorBrewer'ın nitel paletleri, eşit görsel ağırlığa sahip renkleri renkleri ayırt etmeyi kolaylaştırırken dengeler. "paired" ve "accent" şemaları ise sırasıyla farklı açıklıklarda renk çiftleri ve belirli kategorileri vurgulamak için daha yoğun renklere sahip bir palet sunarak bundan sapar.
Bu veri özelinde, orman için yeşil ve su için mavi gibi sezgisel renkleri seçmek daha mantıklı olabilir. Hangisi daha uygunsa, yeni renkleri ayarlamak, ilgili tm_*** katmanında palette argümanına bir renk vektörü geçirmen kadar kolaydır.
Bu egzersiz
R ile Coğrafi Verileri Görselleştirme
kursunun bir parçasıdırEgzersiz talimatları
tm_shape()vetm_raster()'ı birleştirerekland_coverraster’ını çiz. Varsayılan olaraktmap,RColorBrewer'ın"Set3"nitel paletini kullanır.ggplot2'de kullanılan paleti taklit edenhcl_colskodunu incele. Ardındanland_coverraster’ını tekrar çiz vetm_raster()'ınpaletteargümanınahcl_cols'u geçir.- Kategorileri görmek için
land_coverüzerindelevels()çağır. - Bu kez, palet olarak
intuitive_colskullan veposition = c("left", "bottom")argümanıyla birtm_legend()katmanı ekle.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
library(raster)
# Plot land_cover
# Palette like the ggplot2 default
hcl_cols <- hcl(h = seq(15, 375, length = 9),
c = 100, l = 65)[-9]
# Use hcl_cols as the palette
# Examine levels of land_cover
# A set of intuitive colors
intuitive_cols <- c(
"darkgreen",
"darkolivegreen4",
"goldenrod2",
"seagreen",
"wheat",
"slategrey",
"white",
"lightskyblue1"
)
# Use intuitive_cols as palette