Ana içeriğe geç

Seaborn Renk Paleti: Renk Seçimi için Hızlı Rehber

Kategoriler için net ayrımda color_palette(), kademeli ardışık verilerde cubehelix_palette() ve orta noktadan belirgin sapmalarda diverging_palette() kullanın.
· 4 dk. oku

Yapay Zeka ile Keşfedin

Veri görselleştirmede, uygun renkleri seçmek doğru grafik türünü veya veri gösterimini seçmek kadar önemlidir. Neyse ki Python, Seaborn ile doğru renk paletini bulmayı kolaylaştırır. Sadece bilgilendirici değil, aynı zamanda görsel olarak etkileyici ve erişilebilir görselleştirmeler oluşturmayı anlamak için okumaya devam edin.

Python'a yeniyseniz, Introduction to Python kursu veya Python Programming beceri yoluyla başlamayı düşünebilirsiniz. Bu kaynaklar, örnekleri takip etmek ve Seaborn’un yeteneklerini tam olarak kullanmak için gerekli becerileri sağlayacaktır.

Renk Temelleri Hakkında Kısa Not

Her rengi tanımlayan üç ana unsur vardır: ton (hue), doygunluk (saturation) ve değer (value). Her biri farklı türde bilgileri ilettikleri için önemlidir.

Ton (Hue)

Ton, genellikle "renk" olarak düşündüğümüz şeydir — kırmızı, mavi veya yeşil gibi saf rengin kendisidir.

Ton (hue) görseli. Görsel: Yazar.

Bu görsel, kırmızıdan mora renk çarkında dolaşarak farklı tonları gösteriyor. Farklı tonlar, kategorik verileri temsil etmek veya belirli öğeleri vurgulamak için uygundur. Örneğin, bir çubuk grafikte veya saçılım grafiğinde ilgisiz kategorileri ayırt etmek için belirgin tonlar kullanabilirsiniz.

Doygunluk (Saturation)

Doygunluk, bir rengin yoğunluğunu veya saflığını ifade eder. Tam doygunlukta bir renk canlıdır; daha az doygun renk ise daha soluk ya da griye yakın görünür.

Doygunluk görseli. Görsel: Yazar.

Bu gradyan, tek bir ton için farklı doygunluk seviyelerini gösterir. Sağdaki renk tamamen doygundur. Sola doğru ilerledikçe renk giderek doygunluğunu kaybeder ve sonunda neredeyse gri görünür. Daha doygun renkler, önemli veri noktalarına veya ilgi alanlarına dikkat çekebilir.

Değer (Value)

Parlaklık olarak da bilinen değer, bir rengin açıklığını veya koyuluğunu ifade eder. Beyaz eklemek değeri artırır, siyah eklemek ise azaltır.

Değer (parlaklık) görseli. Görsel: Yazar.

Bu gradyan, aynı ton için farklı parlaklık seviyelerini gösterir. Sağda, rengi en parlak halinde görüyoruz. Sola doğru ilerledikçe değer azalır ve renk koyulaşır. Değer, veride ilerleme veya hiyerarşi göstermek için kullanışlıdır. Örneğin, iki boyutlu bir ızgara boyunca verinin yoğunluğunu göstermek için ısı haritasında bir değer gradyanı kullanabilirsiniz.

Seaborn Renk Paleti Türleri

Seaborn’daki üç ana renk paleti türünü inceleyelim: nitel (qualitative), ardışık (sequential) ve ayrışan (diverging).

color_palette() ile nitel paletler

Nitel paletler, kategoriler arasında doğal bir sıralama veya ilişki olmadığında kullanılan kategorik veriler için tasarlanmıştır. Bu paletler, kategorileri ayırt etmek için farklı tonlar kullanır.

Nitel palet. Görsel: Yazar.

Yukarıda gösterilen "Bright" paleti, Seaborn’daki yerleşik nitel paletlere bir örnektir. Kategorileri ayırmak için farklı ve canlı tonlar kullanır. Renkler birbirinden kolayca ayırt edilebilir; bu da kategoriler arasında doğal bir sıralama veya ilişki olmadığında kategorik veriler için idealdir.

color_palette() işlevi, Seaborn’un özel renk paletleri oluşturma yoludur. Palet adını ve renk sayısını değiştirerek bu farklı palet türleri arasında geçiş yapmanıza olanak tanır. Adlandırılmış paletleri (ör. "pastel" veya "Blues") kullanırken, number parametresi kaç renk göreceğinizi belirler. Genelde, renk sayısını veri kategorilerinizle eşlersiniz veya belirli adım sayısına sahip bir gradyan oluşturursunuz.

Daha da hassas kontrol için, tam renkleri tanımlamak üzere HEX kodlarını kullanabilirsiniz. Bu, özellikle belirli marka renkleriyle eşleşmeniz gerektiğinde veya yerleşik paletlerde bulunmayan benzersiz bir renk şeması oluşturmak istediğinizde kullanışlıdır. İşte color_palette() kullanarak farklı palet türlerinin nasıl oluşturulacağı:

import seaborn as sns
# Create a qualitative palette with 4 colors
qual_palette = sns.color_palette("pastel", 4)

Dört renkten oluşan nitel bir palet oluşturma. Görsel: Yazar.

# Create a sequential palette with 6 colors
seq_palette = sns.color_palette("Blues", 6)

Altı renkten oluşan ardışık bir palet oluşturma. Görsel: Yazar.

# Create a diverging palette with 12 colors
div_palette = sns.color_palette("RdBu", 12)

On iki renkten oluşan ayrışan bir palet oluşturma. Görsel: Yazar.

# Create a custom palette using HEX codes 
hex = sns.color_palette(["#FF6B6B", "#4ECDC4", "#45B7D1","#FAD02E", "#594F4F"])

HEX kodlarıyla özel bir palet oluşturma. Görsel: Yazar.

cubehelix_palette() kullanarak ardışık paletler  

Ardışık paletler, doğal bir sıralamaya sahip sayısal veriler için idealdir. Bu paletler, genellikle tek bir tonun veya birden fazla tonun açıklık ve/veya doygunluk varyasyonlarını kullanarak düşükten yükseğe doğru bir ilerlemeyi gösterir.

Viridis ardışık paletinin görselleştirilmesi. Görsel: Yazar.

"Viridis" paleti, koyu moradan parlak sarıya bir ilerlemeyi gösterir. Bu tür bir palet, düşükten yükseğe bir değer aralığını göstermek için uygundur. Özellikle sıcaklık aralıkları, nüfus yoğunlukları veya düşükten yükseğe açık bir ilişki göstermek istediğiniz herhangi bir sürekli veri için kullanışlıdır. Diğer yerleşik seçenekler: ‘Blues’, ‘Greens’, ‘Reds’, ‘YlOrBr’ ve ‘rocket’.

cubehelix_palette() işlevi, parlaklık ve renk ilerlemesi üzerinde ince ayar kontrolüyle ardışık paletler oluşturmayı sağlar. Bu işlev, parlaklığı düzgün biçimde artan ve tonda hafifçe değişen bir palete ihtiyaç duyduğunuzda özellikle kullanışlıdır. Özelleştirme için parametreler şunlardır:

  • n_colors: Paletteki renk sayısı.

  • start: Renk döngüsündeki başlangıç konumu (0-3).

  • rot: Tonun ne kadar değişeceğini belirler. 

  • dark: Paletteki en koyu renk.

  • light: Paletteki en açık renk.

  • reverse: Paletin yönünün ters çevrilip çevrilmeyeceği.

import seaborn as sns
# Create a default cubehelix palette
default_cube = sns.cubehelix_palette(8)

Varsayılan cubehelix paletinin görselleştirilmesi. Görsel: Yazar.

# Create a custom cubehelix palette
custom_cube = sns.cubehelix_palette(8, start=.5, rot=-.75, dark=.3, light=.8)

Özel bir cubehelix paletinin görselleştirilmesi. Görsel: Yazar.

# Create a reversed cubehelix palette
reversed_cube = sns.cubehelix_palette(8, start=2, rot=0, dark=0, light=.95, reverse=True)

Ters çevrilmiş bir cubehelix paletinin görselleştirilmesi. Görsel: Yazar.

diverging_palette() kullanarak ayrışan paletler

Ayrışan paletler, anlamlı bir orta nokta veya sıfır değeri olan veriler için tasarlanmıştır. Bu paletler, merkezden sapmayı vurgulamak için, değerler merkezden uzaklaştıkça doygunluğu artan iki karşıt tonu kullanır. 

Ayrışan bir paletin görselleştirilmesi. Görsel: Yazar.

Yukarıdaki örnek, bu paletlerin merkez noktadan sapmaları nasıl vurguladığını etkili bir şekilde gösteriyor. Palet, serin mavilerden nötr beyaza ve sıcak kırmızılara doğru, belirgin bir orta noktayla geçiş yapıyor. Bu tür bir palet, sıcaklık anomalilerini (0’ın ortalama sıcaklığı temsil ettiği durumlar) veya finansal verilerde kâr/zarar senaryolarını görselleştirmek için kullanılabilir. Diğer yerleşik seçenekler: 'RdBu', 'RdYlGn' ve 'PiYG'. Parametrelere bakalım:

  • h_neg ve h_pos: Paletin negatif ve pozitif uçları için tonlar.

  • n: Paletteki renk sayısı.

  • s: Renklerin doygunluğu.

  • l: Renklerin açıklığı.

  • center: Orta noktanın rengi ('light' veya 'dark').

import seaborn as sns
# Create a default diverging palette
default_div = sns.diverging_palette(220, 20, n=7)

Varsayılan bir ayrışan paletin görselleştirilmesi. Image by Author.

# Create a diverging palette with more saturation
saturated_div = sns.diverging_palette(250, 30, l=65, s=75, n=7)

Daha doygun bir ayrışan palet. Görsel: Yazar.

# Create a diverging palette with a darker center
dark_center_div = sns.diverging_palette(150, 275, s=80, l=55, n=9, center="dark")

Ortası daha koyu bir ayrışan palet. Görsel: Yazar.

Seaborn Renk Paletleri Üzerine Son Not

Doğru renk paletini seçmek, etkili veri görselleştirmeleri oluşturmanın kritik bir yönüdür. Seaborn’un çeşitli ve özelleştirilebilir renk paleti seçenekleri, veri temsillerinizin netliğini ve etkisini artırmak için güçlü araçlar sunar.

Bu renk kavramlarını veri görselleştirme projelerinize uygular ve becerilerinizi geliştirmeyi hedeflerken, Python Developer veya Data Analyst with Python kariyer yollarını keşfetmeyi düşünebilirsiniz. Bu kariyer odaklı yollar, temel kavramlardan daha gelişmiş uygulamalara yetkinliğinizi yükseltmek için tasarlanmıştır ve iyi görselleştirmeleri anlamak her zaman önemlidir.

Vinod Chugani

Yazar

Vinod Chugani

Vinod Chugani kariyerine Tokyo'da JPMorgan'ın en genç Hedge Fund Sales Desk Lideri olarak başladı ve daha sonra Lehman Brothers'ta bireysel satış rekoru kırdı, ardından 30 ülkede faaliyet gösteren bir elektronik dağıtım işi kurdu ve veriye yönelmeden önce geliri SG$100 milyonun üzerine taşıdı. Duke Ekonomimezunu ve NYC Data Science Academy alum, Maven'de Hugo Bowne-Anderson'ın Building AI Applications kursu için 100+ başvuru arasından seçilen üç bursiyerden biriydi. Bugün, istatistikten ajan temelli yapay zekâya uzanan konularda DataCamp, KDnuggets, Machine Learning Mastery ve Statology için yazıyor ve adında 1.000'i aşkın bire bir oturum bulunan NYC Data Science Academy'de veri profesyonellerine mentorluk yapıyor.

 

Seaborn Renk Paleti SSS

Seaborn'da mevcut farklı renk paleti türleri nelerdir?

Seaborn üç ana renk paleti türü sunar: nitel (qualitative), ardışık (sequential) ve ayrışan (diverging). Nitel paletler kategorik veriler için, ardışık paletler doğal sıralamaya sahip sayısal veriler için ve ayrışan paletler anlamlı bir orta noktası olan veriler için idealdir.

Seaborn'da özel bir renk paletini nasıl oluşturabilirim?

color_palette() işlevini kullanarak nitel, ardışık ve ayrışan türler dahil özel paletler oluşturabilirsiniz. Hassas kontrol için HEX kodlarıyla belirli renkleri seçmenize olanak tanır.

Seaborn'da cubehelix_palette() ne zaman kullanılmalıdır?

cubehelix_palette() işlevi, özellikle parlaklık ve renk değişimi üzerinde ince ayar kontrolüne ihtiyaç duyduğunuzda, yumuşak renk geçişlerine sahip ardışık paletler oluşturmak için kullanışlıdır.

Veri görselleştirmede diverging_palette() kullanmanın amacı nedir?

diverging_palette() işlevi, kâr/zarar veya sıcaklık anomalileri gibi anlamlı bir orta noktası olan veriler için tasarlanmıştır. Merkezden sapmayı göstermek için karşıt tonlar kullanır ve sapmaları vurgulamaya yardımcı olur.

Renk seçiminde ton (hue), doygunluk (saturation) ve değer (value) nedir?

Ton, kırmızı veya mavi gibi saf rengi temsil eder; doygunluk, rengin canlılıktan solukluğa uzanan yoğunluğunu gösterir; değer ise parlaklık olarak da bilinen rengin açıklığını veya koyuluğunu tanımlar. Bu öğeleri anlamak, farklı veri türlerini görselleştirmek için etkili renkler seçmeye yardımcı olur.

 

Konular

İlgili