Günümüzün altın cevheri olarak gösterilen veri, popüleritesini artırmakta. Bu artış veri analizi, veri temizleme ve veri görselleştirme gibi alt dalları da gittikçe yaygın hale getirmekte. Veri bilimciliğinin son zamanlarda yaşadığı artış aynı şekilde programlama dillerinin ve kütüphanelerinin kullanım sıklığını da etkiledi. Bu kütüphanelerin başını Pandas, NumPy, Scikit-learn ve Matplotlib gibi Python kütüphaneleri çekmektedir. Bir veri yığınını analiz etmek için doğru soruları sorması gereken veri bilimci elindeki sonuçları da en iyi şekilde analiz edip raporlamalıdır. Bu analiz için en büyük silahı ise “veri görselleştirmedir“.
İçindekiler
Veri Görselleştirme
Görselleştirme bilgiyi analiz etmenin ve ondan belirli sonuçlar çıkarmanın en kolay yoludur. Yapılan bu görselleştirmeler karmaşık bir sorunu kolayca anlamamıza yardımcı olur. Görselleştirmeler verideki ilişkileri, yapıları ve aykırı değerleri tespit etmemize destek sağlar. Aynı zamanda EDA (Exploratory Data Analysis) ve Makine Öğrenmesi gibi süreçlere verimizi hazırlar.
Python’da ise veri görselleştirme için kütüphaneler bulunmakta. Bunlardan belki de uygulama aşaması en basit olanı ve işlev olarak çok yükseği Matplotlib kütüphanesidir. Matplotlib, figürlerin görselleştirilmesinde biz analizcilere yardımcı olan 2 Boyutlu bir çizim kütüphanesidir. Matplotlib, Matlab benzeri grafikler ve görselleştirmeler kullanır fakat Matlab’ın ücretli ve karışık olması Matplotlib’i bir adım öne çıkarıyor. Matplotlib’in en öne çıkan özellikleri şunlardır :
- Matplotlib en popüler görselleştirme kütüphanesidir.
- Bir figür üzerinde tamamen kontrol sağlayabilirsiniz.
- Matlab’ın grafik çizimine benzer bir his vermesi ve kıyasla daha kolay ve ücretsiz olması.
Matplotlib Nasıl Kullanılır?
Örnekler üzerinden gitmeden önce bu yazıda kullanacağımız örnek veri setine makine öğrenmesi için veri setleri bulunan UCI’ın sayfasından ulaşabilirsiniz. Uygulama kısmındaki örneklerde “İris”, bir diğer adıyla “süsen çiçeğine” ait taç yaprağı ve çanak yaprağın uzunluklarını ve genişliklerini analiz edeceğiz.
İlk olarak terminalden matplotlib kütüphanesini yükleyerek başlıyoruz.
pip install matplotlib
Ardından matplotlib ve bize oldukça yardımı dokunacak Pandas kütüphanesini import ediyoruz ve ardından veri setimizi “df” adını verdiğimiz değişkene yüklüyoruz. Çoğunluğun böyle kullanmasından dolayı maplotlib kütüphanesi “plt” alias’ı (takma adı) ile import edilir.
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv("iris.csv")
Histogram:
Histogramlar veri dağılımının sütunlarla gösterimidir. Genelde bir elemanın veri setindeki frekansını bulmamıza, veri setinin dağılımını keşfetmemize yardımcı olur.
Yukarıda verilen örnekte plt.hist() komutu ile veri setindeki iris çiçeği türlerinin dağılımı histogram olarak görselleştirilmiştir. Bu tabloya göre veri seti tüm türleri eşit miktarda içermektedir.
Scatter Plot:
Scatter Plot (Serpilme Diyagramı) iki farklı değer arasındaki ilişkiyi belirlemek için kullanılan ve noktalardan oluşan bir tablodur. Veri setimiz üzerinden gidersek iris çiçeğinin taç yapraklarının genişliği ve uzunluğu arasındaki ilişkiyi scatter plot ile inceleyelim.
Örnekte görüldüğü üzere plt.scatter() fonksiyonu aldığı iki numeric (sayısal) değere sahip parametre arasındaki ilişkiyi noktalar ile göstermekte.
Line Plot:
Line Plot (Çizgi Grafiği) bize bir setin içerdiği verilerin frekansını çizgi ile gösteren grafiktir.
plt.plot() fonksiyonu aldığı taç yaprak genişliği parametresine ait değerleri veri setindeki ilk örnekten başlayarak son örneğe kadar line plot ile görselleştirdi.
Pie Chart:
Pie Chart bir diğer adıyla Dairesel Grafik bir pizzayı andıracak şekilde yuvarlak yapıya sahiptir. Ve verilerin frekansına göre farklı büyüklüklerde pizza dilimlerine sahip olur.
plt.pie() fonksiyonu aldığı ilk parametre ile değerlerin frekansına göre pizza dilimlerinin ölçülerini belirledi ve ikinci parametre ile bunları isimlendirdi. Eğer pd.Series.value_counts ve pd.Series.unique() metotları hakkında daha fazla bilgi sahibi olmak isterseniz “Pandas Nedir? Nasıl Kullanılır? ” adlı yazımızı okuyabilirsiniz.
Subplots:
Bazı durumlarda aynı anda birden fazla grafiği incelenmesi gerektiğinde subplot yanı alt grafikler kullanılır. Bu sayede tek çıktıda birden fazla grafik alabilirsiniz.
plt.subplot() metodu aldığı “satır sayısı, sütun sayısı ve indeks” parametleri ile çizdireceğiniz bir sonraki grafiği yerleştirir. Yukarıdaki örnekte çanak yaprak uzunluğunu 1 satırlı 2 sütunlu bir ana grafiğin 1.elemanı olarak numaralandırdık. Çanak yaprak genişliğini ise 1 satırlı 2 sütunlu grafiğin ikinci elemanı olarak numaralandırdık. Böylece iki grafik bir satırda yan yana karşımıza çıktı.
Matplotlib Fonksiyonları
Yukarıda kullandığım bazı örneklerde belirli komutlar kullandım. Bu komutlar Matplotlib’e ait temel komutlardır.
- plt.title() : Çizdiğimiz grafiğin başlığını belirler.
- plt.xlabel() : Grafiğin X eksenini adlandırır.
- plt.ylabel() : Grafiğin Y eksenini adlandırır.
- plt.show() : Grafiği ortaya çıkarır.
- plt.legend() : Grafik elemanları adlandırdığımız etiketleri grafikte gösterir.
Sonuç olarak her ne kadar Matplotlib’in zengin içeriklerinden bir kısmına değinebildiysek de görselleştirme araçları ve metotları hakkında daha fazla bilgi almak için Matplotlib dökümantasyonunu inceleyebilirsiniz.