Matplotlib ve Seaborn ile Estetik Grafikler Oluşturma

müfettiş

Moderatör
Top Poster Of Month
Katılım
20 Ocak 2024
Mesajlar
325
Tepkime puanı
1
Puanları
18
Veri biliminde analizlerin kalitesi kadar, bu analizlerin nasıl sunulduğu da büyük önem taşır. Karmaşık verileri bir hikayeye dönüştürmenin en etkili yolu ise görselleştirmedir. Python ekosisteminde Matplotlib bu işin temel taşıyken, Seaborn estetik ve istatistiksel derinlik katan bir üst katmandır.
Bu iki kütüphaneyi kullanarak "standart" grafiklerden kurtulup, profesyonel ve estetik görseller oluşturmanın yollarına birlikte bakalım.

1. Matplotlib: Esneklik ve Kontrolün Merkezi​

Matplotlib, Python'daki görselleştirme kütüphanelerinin atasıdır. Düşük seviyeli bir kütüphane olduğu için grafiğin her bir noktasına (eksenler, çizgiler, metinler) müdahale etmenize olanak tanır.
  • Mimari Yapı: Matplotlib'de her şey bir Figure (çerçeve) ve bunun içindeki Axes (grafik alanı) yapısından oluşur.
  • Özelleştirme: Grafiklerinize başlık eklemek, eksenleri isimlendirmek ve ızgara (grid) çizgilerini yönetmek için doğrudan komutlar sunar.

2. Seaborn: İstatistiksel ve Modern Dokunuş​

Seaborn, Matplotlib tabanlıdır ancak daha modern temalar ve karmaşık istatistiksel grafikler için hazır fonksiyonlar sunar. En büyük avantajı, Pandas DataFrame yapılarıyla doğrudan uyumlu çalışması ve varsayılan renk paletlerinin çok daha profesyonel olmasıdır.
  • Temalar: sns.set_theme() komutuyla tek satırda grafiğinizi "modern" bir görünüme kavuşturabilirsiniz.
  • Karmaşık Grafikler: Isı haritaları (Heatmaps), keman grafikleri (Violin plots) ve regresyon çizgilerini tek satırda oluşturmanıza olanak tanır.

3. Estetik Grafik İçin 5 Altın İpucu​

Sıradan bir grafiği etkileyici bir görsele dönüştürmek için şu adımları takip edebilirsiniz:

A. Renk Paleti Seçimi​

Göz yoran parlak renkler yerine Seaborn'un color_palette() fonksiyonuyla daha soft veya amaca yönelik (örneğin sıcaklık için kırmızı-mavi) paletler seçin.
İpucu: sns.set_palette("viridis") gibi algısal olarak dengeli paletler verideki farkların daha iyi anlaşılmasını sağlar.

B. Gereksiz Elemanlardan Kurtulun (Spine Removal)​

Grafiğin üst ve sağ çizgilerini kaldırmak, izleyicinin odağını doğrudan veriye yöneltir. Matplotlib'de despine() fonksiyonu bu işi saniyeler içinde yapar.

C. Doğru Başlık ve Etiketleme​

Grafik başlığı sadece "Satış Grafiği" olmamalıdır. "2025 Yılında Satışlardaki %20 Artış" gibi bir başlık kullanarak grafik üzerinden bir mesaj verin.

D. İstatistiksel Katmanlar Ekleyin​

Sadece noktaları koymak yerine, noktaların yoğunluğunu veya güven aralıklarını gösteren katmanlar eklemek (Seaborn'un regplot veya kdeplot özellikleri gibi) grafiğe profesyonellik katar.

E. Yazı Tiplerini ve Boyutlarını Ayarlayın​

Eksen isimlerinin ve değerlerin okunabilir olması hayati önem taşır. plt.rcParams üzerinden yazı tiplerini kurumsal kimliğinize veya sunum tarzınıza uygun hale getirebilirsiniz.

Matplotlib ve Seaborn Karşılaştırması​

ÖzellikMatplotlibSeaborn
Kontrol SeviyesiÇok Yüksek (Her şeye müdahale)Orta (Hazır şablonlar ağırlıklı)
Kod KarmaşıklığıDetaylar için daha fazla kodKarmaşık işler için çok az kod
Varsayılan EstetikTemel / Eski tarzModern / Şık
Veri Yapısı UyumuListeler ve Diziler (Arrays)Pandas DataFrames

Sonuç​

Matplotlib ve Seaborn birbirinin rakibi değil, tamamlayıcısıdır. Profesyonel bir veri bilimci, grafiğin iskeletini oluşturmak için Seaborn'un hızını ve estetiğini kullanırken, ince ayarlar ve detaylı özelleştirmeler için Matplotlib'in gücüne başvurur.
 
Geri
Üst