Matplotlib, Creating and Designing Graphs

Kategori: Python , 12 Eylül 2019 , JanFranco


Matplotlib kütüphanesi ile verileri görselleştirebilir, grafikler oluşturabilir, resimleri görüntüleyebiliriz. Aşağıdaki komut ile kütüphaneyi kolayca indirebiliriz:


pip install matplotlib
Kütüphaneleri import ederek başlayalım:


import numpy as np
import matplotlib.pyplot as plt
x ve y değerleri oluşturup ilk grafiğimizi görüntüleyelim. Grafik oluşturmak için plot() methodunu kullanabiliriz. Parametre olarak x ve y değerlerini gönderelim. Opsiyonel olarak renk de belirtebiliriz. xlabel() ve ylabel() methodları ile x, y eksenlerine isim verebiliriz. title() methodu ile grafiğe başlık atayabiliriz. show() methodu ile oluşturduğumuz grafiği görüntüleyebiliriz:


x = np.arange(1, 6)
y = np.arange(2, 11, 2)

plt.plot(x, y, "red")
plt.xlabel("X Values")
plt.ylabel("Y Values")
plt.title("X vs Y Graph")
plt.show()
matplotlib tutorial

subplot() methodu ile grafik tek bir pencerede alt grafikler oluşturabiliriz. Parametre olarak ilk iki değeri 2, 2 verelim. Bu şekilde 2x2 lik bir matris oluşturmuş oluruz. Üçüncü parametre ile matrisin elemanlarına erişiriz:


plt.subplot(2, 2, 1)
plt.plot(x, y, "red")
plt.subplot(2, 2, 2)
plt.plot(y, x, "blue")
plt.subplot(2, 2, 3)
plt.plot(y, x, "black")
plt.subplot(2, 2, 4)
plt.plot(x, y, "yellow")
plt.show()
matplotlib tutorial

figure() methodu ile kendi pencerelerimizi tanımlayabilir, özelliştirebiliriz. add_axes() methodu ile pencerede görüntüleyeceğimiz grafiğin boyutları ile oynayabiliriz. Gönderdiğimiz listede ilk iki değer x - y eksenlerine uzaklık, son iki değer grafiğin boyutlarıdır:


fig = plt.figure()
axes = fig.add_axes([0.1, 0.1, 0.5, 0.5])
axes.plot(x, y, "red")
axes.set_xlabel("X Values")
axes.set_ylabel("Y Values")
axes.set_title("X vs Y Graph")
plt.show()
matplotlib tutorial

add_axes methodunu kullanarak iç içe grafikler tanımlayalım:


fig = plt.figure()
axes1 = fig.add_axes([0.1,0.1,0.8,0.8])
axes2 = fig.add_axes([0.4,0.5,0.4,0.3])
plt.show()

fig = plt.figure()
axes1 = fig.add_axes([0.1, 0.1, 0.8, 0.8])
axes2 = fig.add_axes([0.2, 0.5, 0.2, 0.3])

axes2.plot(x,y)
axes2.set_xlabel("Inner X")
axes2.set_ylabel("Inner Y")
axes2.set_title("Inner Graph")

axes1.plot(y,x)
axes1.set_xlabel("Outer X")
axes1.set_ylabel("Outer Y")
axes1.set_title("Outer Graph")

plt.show()
matplotlib tutorial

matplotlib tutorial

Farklı eğrileri tek grafikte farklı renklerle gösterelim:


fig, axes = plt.subplots(figsize=(8, 6))
axes.plot(x, x**0.5, label="square root of x", color="red")
axes.plot(x, x**2, label="x^2", color="blue")
axes.plot(x, x**3, label="x^3", color="#9f7adf")
axes.legend()
plt.show()
matplotlib tutorial

figsize parametresi ile pencerelerin boyutlarını ayarlayabiliriz:


fig = plt.figure(figsize=(4,4))
ax = fig.add_axes([0.1, 0.1, 0.5, 0.5])
ax.plot(x, y)
plt.show()
matplotlib tutorial

plot() methodunun linewidth parametresi ile eğrilerin kalınlığını, linestyle parametresi ile stillerini değiştirebiliriz:


fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax.plot(x, x**2, color="red", linewidth=5, linestyle="--")
plt.show()
matplotlib tutorial

plot() methodunun marker parametresi ile belli noktaları gösterebiliriz. markersize parametresi ile bu noktaların boyutunu ayarlayabilir, markerfacecolor parametresi ile bu noktaları renklendirebiliriz:


fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax.plot(x, x**2, color="red", marker="o", markersize=10, markerfacecolor ="black")
plt.show()
matplotlib tutorial

set_xlim() ve set_ylim() methodları x, y eksenlerini limitleyebiliriz:


fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax.plot(x, x**2, lw=3, ls="--")
ax.set_xlim(0, 20)
ax.set_ylim(0, 50)
plt.show()
matplotlib tutorial


Sonraki Yazı: Creating Executable Files
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın