Seaborn Distplot: Kapsamlı Bir Rehber
Giriş
Veri analizi ve keşifsel veri analizi (EDA) sürecinde, verilerin dağılımını anlamak kritik öneme sahiptir. Bir değişkenin değerlerinin nasıl yayıldığını, hangi değerlerin daha sık görüldüğünü ve potansiyel aykırı değerleri görselleştirmek, veri setimiz hakkında derinlemesine içgörüler sağlar. Python’da veri görselleştirme denince akla gelen en güçlü kütüphanelerden biri olan Seaborn, bu tür dağılımları kolay ve estetik bir şekilde görselleştirmek için çeşitli araçlar sunar. Bu araçlardan biri de seaborn.distplot fonksiyonudur.
Bu kapsamlı rehberde, seaborn.distplot‘un ne olduğunu, nasıl kullanıldığını, temel bileşenlerini, gelişmiş özelleştirme seçeneklerini ve güncel alternatiflerini detaylı bir şekilde inceleyeceğiz. Amacımız, tek değişkenli dağılımları anlamak ve etkili bir şekilde görselleştirmek isteyen herkese pratik ve teorik bir yol haritası sunmaktır.
Seaborn ve Matplotlib’e Hızlı Bir Bakış
Seaborn, Matplotlib üzerine inşa edilmiş yüksek seviyeli bir veri görselleştirme kütüphanesidir. Matplotlib’in esnekliğini korurken, daha az kodla daha çekici ve bilgilendirici istatistiksel grafikler oluşturmayı hedefler. Özellikle istatistiksel grafikler için optimize edilmiş olan Seaborn, karmaşık veri setlerindeki ilişkileri, dağılımları ve karşılaştırmaları görselleştirmeyi basitleştirir. distplot gibi fonksiyonlar, Matplotlib’in temel çizim yeteneklerini kullanarak, istatistiksel hesaplamaları ve estetik düzenlemeleri otomatik olarak yapar. Bu sayede, kullanıcılar grafiklerin teknik detaylarıyla uğraşmak yerine, verilerinin hikayesine odaklanabilirler.
seaborn.distplot Nedir?
seaborn.distplot, tek değişkenli (univariate) veri dağılımlarını görselleştirmek için tasarlanmış bir fonksiyondur. Bir değişkenin değerlerinin frekansını veya yoğunluğunu göstermek için birden fazla görsel öğeyi bir araya getirir. Bu özelliği sayesinde, bir dağılımın genel şekli, merkez eğilimi ve yayılımı hakkında hızlıca bilgi edinmek mümkündür.
Temel Bileşenler
distplot temel olarak üç ana görsel bileşeni birleştirir:
1. Histogram: Veri aralıklarını (bins) gösteren çubuk grafiklerdir. Her çubuğun yüksekliği, o aralıktaki veri noktalarının sayısını veya oranını temsil eder. Bir veri setindeki değerlerin frekans dağılımını görselleştirmenin en temel yollarından biridir.
2. KDE (Kernel Density Estimate – Çekirdek Yoğunluk Tahmini): Verinin pürüzsüzleştirilmiş bir yoğunluk tahmini çizgisidir. Histogramın aksine, KDE, aralıklar yerine sürekli bir eğri kullanarak dağılımın şeklini tahmin eder. Bu, dağılımın altında yatan olasılık yoğunluk fonksiyonunu daha net bir şekilde görmemizi sağlar.
3. Rug Plot (Halı Grafiği): Veri ekseni üzerinde her veri noktasının konumunu küçük dikey çizgilerle gösterir. Bu, veri noktalarının yoğunlaştığı veya seyrek olduğu bölgeleri doğrudan gözlemlememizi sağlar. Özellikle KDE’nin veya histogramın belirli bölgelerdeki tahminlerinin gerçek veri noktalarıyla ne kadar uyumlu olduğunu anlamak için faydalıdır.
Bu üç bileşen, bir dağılım hakkında hem kaba hem de ince ayrıntıları aynı anda sunarak, veri analistlerine kapsamlı bir bakış açısı sağlar.
Temel Kullanım
distplot‘u kullanmak oldukça basittir. Sadece görselleştirmek istediğiniz tek boyutlu veri dizisini (bir NumPy dizisi, Pandas Serisi veya liste) fonksiyona geçirmeniz yeterlidir.
Gerekli Kütüphanelerin İçe Aktarılması
İlk olarak, gerekli kütüphaneleri içe aktaralım:
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
Basit Bir distplot Oluşturma
Şimdi, rastgele oluşturulmuş bir veri seti üzerinde distplot‘un temel kullanımını görelim:
# Rastgele veri oluşturma
data = np.random.normal(loc=0, scale=1, size=1000) # Ortalama 0, standart sapma 1 olan 1000 veri noktası
distplot oluşturma
sns.distplot(data)
Grafiği gösterme
plt.title("Temel Dağılım Grafiği")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.show()
Bu kod parçası, varsayılan olarak bir histogram, bir KDE ve bir rug plot içeren bir grafik oluşturacaktır. Çıktı, verilerin yaklaşık olarak normal bir dağılıma sahip olduğunu gösterecektir.
distplot‘un Bileşenlerini Anlamak ve Kontrol Etmek
distplot, kullanıcıların her bir bileşeni ayrı ayrı etkinleştirmesine veya devre dışı bırakmasına ve bunların görünümünü özelleştirmesine olanak tanıyan bir dizi parametreye sahiptir.
Histogramı Özelleştirme
Histogram, distplot‘un temel bileşenlerinden biridir. hist parametresi ile etkinleştirilebilir veya devre dışı bırakılabilir. bins parametresi, histogramdaki çubukların sayısını veya aralıklarını belirler. hist_kws sözlüğü ise Matplotlib’in hist fonksiyonuna iletilen anahtar kelime argümanlarını barındırır.
# Sadece histogramı göster
sns.distplot(data, hist=True, kde=False, rug=False)
plt.title("Sadece Histogram")
plt.xlabel("Değerler")
plt.ylabel("Frekans")
plt.show()
Çubuk sayısını (bins) ayarlama
sns.distplot(data, bins=30, kde=False, rug=False) # 30 çubuk
plt.title("Histogram (30 Çubuk)")
plt.xlabel("Değerler")
plt.ylabel("Frekans")
plt.show()
Histogramın rengini ve kenarlıklarını değiştirme
sns.distplot(data, hist_kws={
"color": "skyblue",
"edgecolor": "black",
"linewidth": 1.5,
"alpha": 0.7
}, kde=False, rug=False)
plt.title("Özelleştirilmiş Histogram")
plt.xlabel("Değerler")
plt.ylabel("Frekans")
plt.show()
bins parametresi, dağılımın ne kadar ayrıntılı gösterileceğini belirler. Daha fazla bins, daha ince ayrıntılar sunar ancak gürültülü olabilir; daha az bins ise genel şekli daha pürüzsüz gösterir ancak ayrıntıları gizleyebilir.
KDE’yi (Kernel Density Estimate) Özelleştirme
KDE, kde parametresi ile etkinleştirilebilir veya devre dışı bırakılabilir. kde_kws sözlüğü, Matplotlib’in plot fonksiyonuna iletilen anahtar kelime argümanlarını barındırır.
# Sadece KDE'yi göster
sns.distplot(data, hist=False, kde=True, rug=False)
plt.title("Sadece KDE")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.show()
KDE çizgisini özelleştirme
sns.distplot(data, hist=False, kde_kws={
"color": "red",
"linewidth": 2,
"linestyle": "--",
"alpha": 0.8,
"shade": True # KDE'nin altını doldurma
}, rug=False)
plt.title("Özelleştirilmiş KDE")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.show()
shade=True parametresi, KDE eğrisinin altındaki alanı doldurarak dağılımın görsel etkisini artırır. bw_method (bandwidth method) ve gridsize gibi daha gelişmiş kde_kws parametreleri, KDE tahmininin pürüzsüzlüğünü ve hassasiyetini kontrol eder. bw_method genellikle ‘scott’, ‘silverman’ veya bir sayısal değer alabilir; bu, çekirdek fonksiyonunun genişliğini belirler ve eğrinin ne kadar pürüzsüz olacağını etkiler.
Rug Plot’u Özelleştirme
Rug plot, rug parametresi ile etkinleştirilebilir veya devre dışı bırakılabilir. rug_kws sözlüğü, Matplotlib’in plot fonksiyonuna iletilen anahtar kelime argümanlarını barındırır.
# Sadece rug plot'u göster
sns.distplot(data, hist=False, kde=False, rug=True)
plt.title("Sadece Rug Plot")
plt.xlabel("Değerler")
plt.show()
Rug plot'u özelleştirme
sns.distplot(data, hist=False, kde=False, rug_kws={
"color": "purple",
"linewidth": 0.5,
"height": 0.05 # Çizgilerin yüksekliği
})
plt.title("Özelleştirilmiş Rug Plot")
plt.xlabel("Değerler")
plt.show()
height parametresi, rug çizgilerinin eksen üzerindeki yüksekliğini kontrol eder. Rug plot, özellikle veri noktalarının yoğunlaştığı veya boşlukların olduğu yerleri doğrudan göstermesi açısından faydalıdır.
Gelişmiş Özellikler ve Özelleştirmeler
distplot, yalnızca temel bileşenleri kontrol etmekle kalmaz, aynı zamanda grafiklerinizi daha bilgilendirici hale getirmek için çeşitli gelişmiş özelleştirme seçenekleri sunar.
Normalizasyon ve Yoğunluk
Varsayılan olarak, distplot histogramı yoğunluk (density) olarak normalleştirir, yani çubukların toplam alanı 1’e eşittir. Bu, KDE eğrisi ile histogramın aynı ölçekte olmasını sağlar. Ancak, frekansları görmek istiyorsanız norm_hist=False olarak ayarlayabilirsiniz.
# Histogramı frekans olarak gösterme (KDE ile birlikte)
sns.distplot(data, norm_hist=False, kde_kws={"color": "red"})
plt.title("Histogram (Frekans) ve KDE")
plt.xlabel("Değerler")
plt.ylabel("Frekans / Yoğunluk") # İki ölçekli bir grafik için etiket
plt.show()
norm_hist=False yapıldığında, histogram çubukları frekansları temsil ederken, KDE eğrisi hala olasılık yoğunluğunu temsil edecektir. Bu durumda y ekseni etiketi “Frekans / Yoğunluk” gibi bir ifadeyle iki farklı ölçeği ima etmelidir.
Farklı Renkler ve Stiller
color parametresi, tüm grafik bileşenlerinin (histogram, KDE, rug plot) ana rengini belirler. Ancak, her bileşenin kendi _kws sözlüğü aracılığıyla daha spesifik renk ve stil ayarlamaları yapabilirsiniz.
sns.distplot(data, color="green",
hist_kws={"edgecolor": "black", "alpha": 0.6},
kde_kws={"linewidth": 2, "linestyle": "-."},
rug_kws={"color": "darkgreen", "height": 0.03})
plt.title("Tamamen Özelleştirilmiş Dağılım")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.show()
Eksen Limitleri ve Etiketler
Grafiğin okunabilirliğini artırmak için eksen limitlerini ve etiketlerini ayarlamak önemlidir. Bu, Matplotlib’in plt modülü aracılığıyla yapılır.
sns.distplot(data, color="blue")
plt.title("Özel Başlık")
plt.xlabel("Özel X Ekseni Etiketi")
plt.ylabel("Özel Y Ekseni Etiketi")
plt.xlim(-4, 4) # X ekseni limitlerini belirleme
plt.ylim(0, 0.5) # Y ekseni limitlerini belirleme
plt.show()
Dikey distplot
Bazen, özellikle birden fazla dağılımı karşılaştırırken veya belirli bir görsel düzeni korurken, dağılımı dikey olarak görselleştirmek isteyebilirsiniz. vertical=True parametresi bu işlevi sağlar.
sns.distplot(data, vertical=True, color="orange")
plt.title("Dikey Dağılım Grafiği")
plt.xlabel("Yoğunluk")
plt.ylabel("Değerler")
plt.show()
Dikey grafiklerde eksen etiketlerinin de değiştiğine dikkat edin.
Ortalama ve Medyan Çizgileri Ekleme
Dağılımın merkez eğilimini vurgulamak için ortalama veya medyan gibi istatistiksel ölçütleri grafik üzerine çizmek çok faydalıdır. Matplotlib’in axvline (dikey çizgi) fonksiyonu bu amaçla kullanılabilir.
mean_val = np.mean(data)
median_val = np.median(data)
sns.distplot(data, color="teal")
plt.axvline(mean_val, color='red', linestyle='--', label=f'Ortalama: {mean_val:.2f}')
plt.axvline(median_val, color='purple', linestyle=':', label=f'Medyan: {median_val:.2f}')
plt.title("Dağılım Ortalaması ve Medyanı ile")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.legend()
plt.show()
Bu, dağılımın simetrisini veya çarpıklığını hızlıca değerlendirmek için harika bir yoldur.
Birden Fazla Dağılımı Tek Grafikte Gösterme (Overlapping)
Farklı gruplara ait dağılımları karşılaştırmak için aynı eksen üzerinde birden fazla distplot çizebilirsiniz. Her distplot çağrısı için label parametresini kullanarak bir açıklama eklemeyi ve plt.legend() ile bunları göstermeyi unutmayın.
data_group1 = np.random.normal(loc=-1, scale=1, size=500)
data_group2 = np.random.normal(loc=1, scale=0.8, size=500)
sns.distplot(data_group1, color="blue", label="Grup 1", hist=False, rug=False, kde_kws={"shade": True})
sns.distplot(data_group2, color="red", label="Grup 2", hist=False, rug=False, kde_kws={"shade": True})
plt.title("İki Grubun Dağılım Karşılaştırması")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.legend()
plt.show()
Bu örnekte, sadece KDE’leri kullanarak dağılımları karşılaştırdık. Histogramları da dahil edebilirsiniz, ancak bu, grafiği daha karmaşık hale getirebilir.
distplot‘un Sınırlamaları ve Alternatifleri
seaborn.distplot güçlü bir araç olmasına rağmen, Seaborn’un daha yeni sürümleriyle birlikte bazı sınırlamaları ortaya çıkmış ve yerine daha esnek ve özelleştirilebilir alternatifler sunulmuştur. Önemli bir not olarak, distplot fonksiyonu Seaborn’un gelecekteki sürümlerinde kaldırılması planlanan eski bir fonksiyondur. Bu nedenle, yeni projelerinizde veya mevcut kodunuzu güncellerken alternatiflerini kullanmanız şiddetle tavsiye edilir.
distplot‘un Sınırlamaları
1. Tek Değişkenli Odak: distplot sadece tek bir değişkenin dağılımını görselleştirmek için tasarlanmıştır. Birden fazla kategorik veya sayısal değişkenin dağılımını aynı anda incelemek için doğrudan bir hue veya col parametresi yoktur.
2. Özelleştirme Zorluğu: Her ne kadar _kws sözlükleri aracılığıyla özelleştirmeler mümkün olsa da, bu yöntem bazen karmaşık olabilir ve daha az sezgiseldir.
3. API Karmaşıklığı: Tek bir fonksiyonun hem histogram, hem KDE, hem de rug plot’u içermesi, bazı durumlarda gereksiz özelliklerin etkin kalmasına veya kontrol edilmesinin zorlaşmasına neden olabilir.
Modern Alternatifler
Seaborn, distplot‘un yerini almak üzere tasarlanmış, daha modüler ve güçlü alternatifler sunar: histplot, kdeplot, ecdfplot ve figure-level displot.
seaborn.histplot
histplot, distplot‘un histogram bileşeninin daha gelişmiş ve esnek bir versiyonudur.
* Hue Desteği: Kategorik değişkenlere göre farklı histogramlar çizebilir.
* Çift Değişkenli Histogramlar: İki sayısal değişkenin dağılımını 2D histogram olarak gösterebilir.
* Normalizasyon Çeşitliliği: stat parametresi ile count, frequency, density, probability gibi farklı normalizasyon türlerini seçebilirsiniz.
* Çoklu bins Stratejileri: Daha esnek binwidth ve bins ayarlamaları sunar.
# histplot ile temel kullanım
sns.histplot(data, kde=True, color="blue")
plt.title("histplot ile Histogram ve KDE")
plt.xlabel("Değerler")
plt.ylabel("Sayı")
plt.show()
Hue ile gruplara göre histogram
df = pd.DataFrame({
'value': np.concatenate([np.random.normal(0, 1, 500), np.random.normal(2, 1, 500)]),
'group': ['A']500 + ['B']500
})
sns.histplot(data=df, x='value', hue='group', kde=True)
plt.title("histplot ile Hue Desteği")
plt.xlabel("Değerler")
plt.ylabel("Sayı")
plt.show()
seaborn.kdeplot
kdeplot, distplot‘un KDE bileşeninin daha gelişmiş bir versiyonudur. Tek başına veya iki değişkenli (bivariate) yoğunluk haritaları oluşturmak için kullanılabilir.
* 2D KDE: İki değişkenin ortak dağılımını kontur çizgileri veya renkli alanlar olarak gösterebilir.
* Daha Fazla Kontrol: fill, levels, thresh gibi parametrelerle KDE görünümünü daha detaylı kontrol edebilirsiniz.
# kdeplot ile tek değişkenli
sns.kdeplot(x=data, fill=True, color="purple")
plt.title("kdeplot ile Tek Değişkenli KDE")
plt.xlabel("Değerler")
plt.ylabel("Yoğunluk")
plt.show()
kdeplot ile iki değişkenli (örnek veri)
data_x = np.random.normal(0, 1, 500)
data_y = np.random.normal(0, 1, 500)
sns.kdeplot(x=data_x, y=data_y, fill=True, cmap="Reds")
plt.title("kdeplot ile İki Değişkenli KDE")
plt.xlabel("X Değeri")
plt.ylabel("Y Değeri")
plt.show()
seaborn.ecdfplot
ecdfplot, kümülatif dağılım fonksiyonunu (Empirical Cumulative Distribution Function – ECDF) görselleştirmek için kullanılır. Bu, bir değerin veya daha azının gözlemlenme olasılığını gösterir.
sns.ecdfplot(data, color="brown")
plt.title("ECDF Plot")
plt.xlabel("Değerler")
plt.ylabel("Kümülatif Olasılık")
plt.show()
seaborn.displot (Dikkat: distplot değil, displot!)
seaborn.displot, figure-level bir fonksiyondur ve kind parametresi aracılığıyla histplot, kdeplot veya ecdfplot‘u çağırabilir. En büyük avantajı, FacetGrid kullanarak birden fazla alt grafik (subplot) oluşturma yeteneğidir. Bu, kategorik değişkenlere göre dağılımları karşılaştırmak için son derece kullanışlıdır.
* Figure-level: Matplotlib’in Figure ve Axes nesnelerini yönetir, bu da birden fazla alt grafik oluşturmayı kolaylaştırır.
* kind parametresi: hist, kde, ecdf seçenekleriyle istediğiniz grafik türünü belirtirsiniz.
* col ve row parametreleri: Kategorik değişkenlere göre grafikleri sütunlara veya satırlara ayırır.
* hue parametresi: Farklı grupları aynı alt grafik içinde renklerle ayırır.
# displot ile histogram (hue ve col desteği ile)
tips = sns.load_dataset("tips") # Örnek veri seti
sns.displot(data=tips, x="total_bill", kind="hist", hue="sex", col="time")
plt.suptitle("displot ile total_bill dağılımı (Cinsiyet ve Zaman'a Göre)", y=1.02)
plt.show()
displot ile KDE
sns.displot(data=tips, x="total_bill", kind="kde", hue="sex", col="time", fill=True)
plt.suptitle("displot ile total_bill KDE (Cinsiyet ve Zaman'a Göre)", y=1.02)
plt.show()
displot, karmaşık karşılaştırmalı dağılım analizleri için tercih edilen fonksiyondur ve distplot‘un yerini alması gereken ana araçtır.
Pratik Bir Uygulama Örneği
Şimdi, gerçek bir veri seti üzerinde distplot‘un ve alternatiflerinin nasıl kullanılabileceğine dair pratik bir örnek yapalım. Seaborn’un iris veri setini kullanarak çiçeklerin taç yaprağı uzunluklarının dağılımını inceleyelim.
# Iris veri setini yükle
iris = sns.load_dataset("iris")
Genel taç yaprağı uzunluğu dağılımı (distplot ile)
plt.figure(figsize=(10, 6))
sns.distplot(iris['petal_length'], color="purple",
bins=20,
hist_kws={"edgecolor": "black", "alpha": 0.7},
kde_kws={"linewidth": 2, "linestyle": "-"},
rug=True, rug_kws={"color": "darkblue", "height": 0.05})
plt.title("Iris Petal Length Dağılımı (distplot)")
plt.xlabel("Taç Yaprağı Uzunluğu (cm)")
plt.ylabel("Yoğunluk")
plt.show()
Türlere göre taç yaprağı uzunluğu dağılımı (displot ile)
plt.figure(figsize=(12, 6))
sns.displot(data=iris, x="petal_length", kind="kde", hue="species", fill=True,
palette="viridis", height=5, aspect=1.2)
plt.suptitle("Iris Petal Length Dağılımı Türlere Göre (displot - KDE)", y=1.02)
plt.xlabel("Taç Yaprağı Uzunluğu (cm)")
plt.ylabel("Yoğunluk")
plt.show()
Türlere göre taç yaprağı uzunluğu dağılımı (displot - hist)
plt.figure(figsize=(12, 6))
sns.displot(data=iris, x="petal_length", kind="hist", hue="species",
multiple="stack", palette="viridis", height=5, aspect=1.2)
plt.suptitle("Iris Petal Length Dağılımı Türlere Göre (displot - Histogram)", y=1.02)
plt.xlabel("Taç Yaprağı Uzunluğu (cm)")
plt.ylabel("Sayı")
plt.show()
İlk grafikte, distplot kullanarak tüm iris türlerinin taç yaprağı uzunluklarının genel dağılımını görüyoruz. İki belirgin tepe noktası, veri setinde farklı taç yaprağı uzunluklarına sahip iki ana grup olduğunu düşündürüyor.
İkinci grafikte ise, displot‘un kind="kde" ve hue="species" parametrelerini kullanarak her bir iris türünün (setosa, versicolor, virginica) taç yaprağı uzunluklarının yoğunluk dağılımını ayrı ayrı ve karşılaştırmalı olarak görüyoruz. Bu, ilk tepe noktasının Setosa türüne, diğer iki tepe noktasının ise Versicolor ve Virginica türlerine ait olduğunu net bir şekilde ortaya koyuyor.
Üçüncü grafikte, displot‘un kind="hist" ve multiple="stack" parametrelerini kullanarak histogramları üst üste yığdık, bu da her türün toplam dağılıma nasıl katkıda bulunduğunu görselleştirmemizi sağladı.
Bu örnek, distplot‘un tek değişkenli genel bir bakış için hala kullanışlı olabileceğini, ancak kategorik değişkenlere göre karşılaştırmalı analizler için displot gibi daha modern ve esnek araçların çok daha güçlü olduğunu göstermektedir.
Sonuç
seaborn.distplot, tek değişkenli veri dağılımlarını görselleştirmek için güçlü ve kullanışlı bir araç olarak Seaborn kütüphanesinin önemli bir parçası olmuştur. Histogram, KDE ve rug plot gibi bileşenleri bir araya getirerek, verilerinizin şekli, merkez eğilimi ve yayılımı hakkında hızlı ve kapsamlı içgörüler sunar. Çeşitli parametreler aracılığıyla bu bileşenlerin görünümünü özelleştirmek mümkündür, bu da analistlere grafiklerini ihtiyaçlarına göre uyarlama esnekliği sağlar.
Ancak, veri görselleştirme kütüphaneleri sürekli geliştiği için, distplot‘un yerini daha modüler, esnek ve çok yönlü alternatifler almıştır. seaborn.histplot, seaborn.kdeplot, seaborn.ecdfplot ve özellikle figure-level seaborn.displot, modern veri analizi iş akışlarında dağılım görselleştirmeleri için tercih edilen araçlardır. Bu yeni fonksiyonlar, özellikle kategorik değişkenlere göre dağılımları karşılaştırmak ve birden fazla alt grafik oluşturmak gibi karmaşık senaryolarda distplot‘tan çok daha üstün yetenekler sunar.
Özetle, distplot‘u anlamak ve kullanabilmek, Seaborn’un tarihsel gelişimini ve temel dağılım görselleştirme prensiplerini kavramak için faydalıdır. Ancak, güncel ve geleceğe dönük projelerinizde histplot, kdeplot ve displot gibi modern alternatiflere yönelmeniz, hem daha esnek hem de daha güçlü görselleştirmeler oluşturmanızı sağlayacaktır. Bu rehberin, tek değişkenli veri dağılımlarını etkili bir şekilde analiz etme ve görselleştirme yolculuğunuzda size sağlam bir temel sunmasını umuyoruz.
