Giriş: Scatter Plot Nedir ve Neden Kullanılır?
Scatter plot, iki değişken arasındaki ilişkiyi görsel olarak temsil eden bir grafik türüdür. Veri analizi ve bilimsel araştırmalarda sıklıkla kullanılan bu grafikler, veri setinin dağılımını ve korelasyonunu hızlıca kavramak için oldukça faydalıdır. Her bir veri noktası, grafikte bir nokta ile temsil edilir ve x-y koordinat sistemi üzerinde yer alır. Böylece, veri noktalarının birbiri ile olan ilişkileri net bir şekilde gözlemlenebilir.
Özellikle makine öğrenmesi ve istatistik alanlarında scatter plot’lar, model seçiminde ve veri ön işleme aşamalarında kritik bir rol oynar. Örneğin, iki değişken arasında doğrusal bir ilişki olup olmadığını anlamak için scatter plot kullanılabilir. Bunun yanı sıra, veri noktasındaki aşırılıkları (outliers) tespit etmek için de son derece faydalıdır.
Bu yazıda, Python kütüphanelerinden Matplotlib ve Seaborn kullanarak scatter plot oluşturma adımlarını işleyeceğiz. Adım adım ilerleyeceğimiz bu kılavuz sayesinde, kendi veri setlerinizi kullanarak etkileyici scatter plot’lar oluşturabileceksiniz.
Adım 1: Gerekli Kütüphanelerin Kurulumu
Scatter plot oluşturmak için önce gerekli kütüphaneleri yüklememiz gerekiyor. Python’da veri görselleştirme için en yaygın kullanılan kütüphaneler Matplotlib ve Seaborn’dur. Matplotlib, esnek ve kapsamlı görselleştirme seçenekleri sunarken, Seaborn ise özellikle daha estetik ve çarpıcı grafikler oluşturmayı kolaylaştıran bir üst katman kütüphanesidir.
Kütüphaneleri yüklemek için terminalinizde şu komutları kullanabilirsiniz:
pip install matplotlib seaborn
Kütüphanelerimizi yükledikten sonra, Python ortamımızda import ederek kullanıma hazır hale getirelim. Aşağıdaki kod parçasını kullanarak kütüphaneleri içe aktarabilirsiniz:
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
Bu aşamada, ayrıca bir veri setine de ihtiyacımız olacak. Kullanım kolaylığı için, Pandas kütüphanesini kullanarak veri setimizi bir DataFrame’e dönüştüreceğiz.
Adım 2: Örnek Veri Setini Oluşturma
Scatter plot oluşturmak için bir veri setine ihtiyacımız var. Örneğin, bir eğitim setinde öğrencilerin sınav sonuçlarını ve ders notlarını kullanabiliriz. Aşağıda, bu tür bir veri setini oluşturmak için gerekli kodu bulabilirsiniz:
data = {
'Ders Notları': [80, 85, 90, 70, 75, 95, 60, 92],
'Sınav Sonuçları': [75, 80, 95, 65, 70, 100, 50, 90]
}
data_frame = pd.DataFrame(data)
Bu kod parçası ile iki değişken (Ders Notları ve Sınav Sonuçları) içeren bir pandas DataFrame’i oluşturmuş olduk. Şimdi, bu veriyi kullanarak scatter plot grafiğimizi oluşturabiliriz.
Adım 3: Matplotlib ile Basit Scatter Plot Oluşturma
Şimdi Matplotlib kullanarak oluşturduğumuz veri seti üzerinde basit bir scatter plot çizelim. Bu birinci adımda, veri noktalarının görsele yansımasını sağlayacağız:
plt.scatter(data_frame['Ders Notları'], data_frame['Sınav Sonuçları'])
plt.title('Ders Notları vs Sınav Sonuçları')
plt.xlabel('Ders Notları')
plt.ylabel('Sınav Sonuçları')
plt.grid()
plt.show()
Yukarıdaki kodda, ‘plt.scatter’ fonksiyonu ile veri noktalarını çizdik. Ayrıca başlık, x ve y eksenleri için etiketler ekledik ve ızgara görünümünü açtık. ‘plt.show()’ komutu ise grafiği ekranda görmemizi sağlıyor.
Grafiğimiz oluşturulduğunda, ders notları ile sınav sonuçları arasındaki ilişkileri görsel olarak tespit edebiliriz. Bu basit yöntem, veri analizi için güçlü bir başlangıçtır; fakat grafiklerimizi daha da geliştirmek ve estetik hale getirmek için Seaborn kütüphanesini kullanabiliriz.
Adım 4: Seaborn ile Daha Estetik Scatter Plot Oluşturma
Seaborn, görselleştirmelerimizi daha çekici hale getirmek için birçok seçenek sunar. Aşağıda, aynı veri setini kullanarak Seaborn ile scatter plot oluşturalım:
sns.scatterplot(x='Ders Notları', y='Sınav Sonuçları', data=data_frame)
plt.title('Ders Notları vs Sınav Sonuçları (Seaborn)')
plt.xlabel('Ders Notları')
plt.ylabel('Sınav Sonuçları')
plt.grid()
plt.show()
Seaborn ile scatterplot oluşturarak, daha güzel ve göz alıcı bir grafik elde ettik. Seaborn, otomatik olarak daha iyi bir stil verecek ve arka planı daha estetik hale getirecektir.
Seaborn ayrıca verilerdeki grupları renklendirmek, farklı şekillerle göstermek ve dağılımları görselleştirmek için çeşitli fonksiyonlar sunar. Örneğin, eğer verimizde cinsiyet gibi bir kategorik değişken varsa, bunu ‘hue’ parametresi ile kullanarak farklı renklerde gösterim elde edebiliriz.
Adım 5: Scatter Plot’a Ek Veri Özellikleri Eklemek
Bir scatter plot’da daha fazla bilgi sunmak için, farklı noktaları farklı renklerde göstermek, noktaların boyutlarına göre (size) veya şekline göre (style) profilleme yapmak mümkündür. Bu şekilde, grafiklerimizi çok daha bilgilendirici hale getirebiliriz.
Aşağıdaki örnekte ayrıca dot boyutunu veri setindekine göre değiştiği bir uygulama göstereceğiz:
data_frame['Not Büyüklüğü'] = [100, 200, 150, 250, 300, 400, 100, 350]
sns.scatterplot(x='Ders Notları', y='Sınav Sonuçları', size='Not Büyüklüğü', sizes=(20, 500), data=data_frame, legend=False)
plt.title('Ders Notları vs Sınav Sonuçları (Boyut ile)')
plt.xlabel('Ders Notları')
plt.ylabel('Sınav Sonuçları')
plt.grid()
plt.show()
Bu örnekte ‘size’ parametresi ile veri setindeki ‘Not Büyüklüğü’ değişkenine göre nokta boyutlarımızı ayarladık. Böylece her bir öğrencinin not büyüklüğüne göre farklı boyutta noktalar görebileceğiz. Bu tür detaylar, grafiğinizi okuyucular için daha anlamlı kılar.
Sonuç ve Öneriler
Bu yazıda, Python kullanarak scatter plot oluşturma sürecini adım adım inceledik. Matplotlib ve Seaborn kütüphanelerini kullanarak basit grafiklerden daha karmaşık ve estetik grafiklere geçiş yaptık. Ayrıca, scatter plot’a ek özellikler ekleyerek daha fazla bilgi sunmanın yollarını keşfettik.
Görselleştirme, veri analizinizi tamamlayıcı bir etken olduğu için, bu like daha fazla veri seti üzerinde deneme yapmanızı öneriyorum. Kendi projelerinizde farklı veri setleri ile çalışarak, grafiğinizde hangi tür bilgilerin daha etkili olduğunu keşfedebilirsiniz. Ayrıca, diğer görselleştirme tekniklerini de öğrenerek veri analiz yeteneklerinizi geliştirebilirsiniz.
Unutmayın, etkili veri görselleştirme, karmaşık bilgileri daha anlaşılır hale getirir ve daha iyi hikayeler anlatmanızı sağlar. Python ve ilgili kütüphaneleri kullanarak, veri analizi alanında önemli adımlar atabilirsiniz. Şimdi, işe yaramaz gibi görünen verileri bile etkileyici grafiklerle sunmanın zamanıdır!