Matplotlib: Python’da Veri Görselleştirme Kütüphanesi

Matplotlib, Python programlama dili için geliştirilmiş, veri görselleştirme amacıyla kullanılan popüler ve güçlü bir kütüphanedir. Özellikle 2 boyutlu grafikler oluşturmak için kullanılır. Python’ın bilimsel ve mühendislik hesaplamalarında yoğun bir şekilde kullanılması nedeniyle Matplotlib, verilerin görselleştirilmesini kolaylaştıran önemli bir araçtır. Geliştiricisi John D. Hunter olan Matplotlib, 2003 yılında piyasaya sürülmüş ve o tarihten bu yana bilimsel topluluk tarafından büyük ilgi görmüştür.

Matplotlib’in Temel Özellikleri

Matplotlib, “MATLAB benzeri bir arayüz” sunar. Bu nedenle MATLAB’a aşina olan kullanıcılar, Matplotlib ile rahatlıkla çalışabilirler. Temel özelliklerinden bazıları şunlardır:

  1. 2D Grafikler: Çizgi grafikleri, çubuk grafikleri, histogramlar, saçılım grafikleri gibi temel 2 boyutlu grafikler kolayca oluşturulabilir.
  2. Çoklu Grafikler: Tek bir figürde birden fazla alt grafik (subplot) oluşturma imkânı sağlar.
  3. Kişiselleştirilebilir Grafikler: Grafiklerdeki eksenler, etiketler, renkler, başlıklar ve stil gibi unsurlar detaylı bir şekilde düzenlenebilir.
  4. Yüksek Performans: Büyük veri kümeleri ile çalışırken yüksek performans sağlar.
  5. 3D Grafikler: mpl_toolkits.mplot3d modülü sayesinde 3 boyutlu grafikler de çizilebilir.
  6. Animasyonlar: Zamanla değişen verileri göstermek için animasyonlar oluşturabilir.
  7. Dosya Formatı Desteği: PNG, PDF, SVG, EPS gibi birçok formatta çıktı alabilir.

Matplotlib Nasıl Kurulur?

Matplotlib kütüphanesini kullanabilmek için öncelikle Python ortamında yüklenmesi gerekmektedir. Kurulum işlemi pip komutuyla kolaylıkla yapılabilir:

pip install matplotlib

Kurulum sonrası test etmek için aşağıdaki Python kodu kullanılabilir:

import matplotlib.pyplot as plt

plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.xlabel("X Ekseni")
plt.ylabel("Y Ekseni")
plt.title("Matplotlib Basit Grafik Örneği")
plt.show()

Bu kod parçası, temel bir çizgi grafiği oluşturarak Matplotlib’in çalıştığını doğrular.

Matplotlib’in Yapısı ve Temel Kavramları

Matplotlib’in en çok kullanılan modülü pyplot‘tır. pyplot, çizim yapmak için gerekli olan tüm fonksiyonları içerir ve “MATLAB benzeri” bir arayüz sağlar.

1. Figure (Şekil)

  • Grafiklerin yer aldığı ana çerçevedir.
  • Birden fazla alt grafik içerebilir.

2. Axes (Eksenler)

  • Grafiklerin çizildiği, x ve y eksenlerinden oluşan alanlardır.
  • Bir Figure nesnesi, birden fazla Axes içerebilir.

3. Artist

  • Matplotlib’te tüm grafik nesneleri “Artist” olarak adlandırılır.
  • Grafik çizgileri, eksenler, başlıklar ve etiketler gibi her şey bir Artist nesnesidir.

Grafik Türleri ve Kullanım Alanları

Matplotlib, birçok farklı grafik türü sunar. İşte en yaygın kullanılan grafik türleri:

1. Çizgi Grafikleri (Line Plot)

Veri noktalarını birleştiren çizgilerden oluşur. Zaman serileri ve eğilim analizi için kullanılır.

import matplotlib.pyplot as plt

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y, color="green", marker="o", linestyle="--")
plt.xlabel("X Değerleri")
plt.ylabel("Y Değerleri")
plt.title("Çizgi Grafiği")
plt.show()

2. Çubuk Grafikleri (Bar Chart)

Kategorik verileri karşılaştırmak için kullanılır.

categories = ["A", "B", "C", "D"]
values = [3, 7, 5, 9]

plt.bar(categories, values, color="blue")
plt.title("Çubuk Grafiği")
plt.show()

3. Histogramlar

Veri dağılımını göstermek için kullanılır.

import numpy as np

data = np.random.randn(1000)

plt.hist(data, bins=30, color="purple", edgecolor="black")
plt.title("Histogram Örneği")
plt.show()

4. Saçılım Grafikleri (Scatter Plot)

Veri noktalarını x-y koordinat sisteminde dağıtarak gösterir.

x = np.random.rand(50)
y = np.random.rand(50)

plt.scatter(x, y, color="red")
plt.title("Saçılım Grafiği")
plt.show()

Matplotlib ile Gelişmiş Kullanım Örnekleri

1. Çoklu Alt Grafikler (Subplots)

Birden fazla grafik tek bir figürde görüntülenebilir.

fig, axes = plt.subplots(2, 2)

x = [1, 2, 3, 4]

axes[0, 0].plot(x, [i**2 for i in x])
axes[0, 0].set_title("Karesel")

axes[0, 1].plot(x, [i**3 for i in x])
axes[0, 1].set_title("Kübik")

axes[1, 0].plot(x, [i**0.5 for i in x])
axes[1, 0].set_title("Karekök")

axes[1, 1].plot(x, [i for i in x])
axes[1, 1].set_title("Lineer")

plt.tight_layout()
plt.show()

2. 3D Grafikler

from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X**2 + Y**2))

ax.plot_surface(X, Y, Z, cmap='viridis')
plt.show()

Değerlendirme

Matplotlib, Python’da veri görselleştirme için temel kütüphanelerden biridir. Bilimsel hesaplamalarda, analizlerde ve raporlamada büyük kolaylık sağlar. Esnek yapısı ve sunduğu geniş özellikler sayesinde her seviyeden kullanıcı, verilerini etkili bir şekilde görselleştirebilir. Geliştiriciler tarafından sürekli desteklenen Matplotlib, Python ekosistemindeki en güçlü araçlardan biri olmaya devam etmektedir.

Share your love
WPW

WPW

Yazar, teknolojiye meraklı, grafik tasarımcı, sosyal medya ve seo danışmanı...

Articles: 577