Python Matplotlib Grafik Çizim Kütüphanesine Kısa Bir Giriş

Matplotlib, Python’da grafikler çizdirmemizi sağlayan oldukça kullanışlı, gelişmiş bir çizim kütüphanesidir.

Öncelikle pip paket yöneticisini, kurulu değilse sistemimize kurmamız gerek.

Windows’ta pip Python (3.5.2) ile birlikte kurulu olarak gelmektedir. Ek bir kuruluma gerek yoktur.

Ubuntu’da pip kurulumu için ve güncellemek için  (Python 3.4 veya 3.5):

Ubuntu 14.04’te Python 3.4, 16.04’te ise Python 3.5 kurulu olarak gelmektedir.

pip paket yöneticisini kurduğumuza göre Matplotlib kütüphanesini kurabiliriz artık.

1.Yöntem: Pip paket yöneticisinden kurulum (otomatik kurulum):

Windows’ta pip3 yerine pip komutunu kullanmamız gerekmektedir.

2.Yöntem: Manuel kurulum:

https://pypi.python.org/pypi/matplotlib/ adresine giderek Python sürümümüze uygun dosyayı indirmemiz gerekmekte.

 

Karşımıza çıkan dosyalarda:

cp34 Python 3.4’ü cp35 Python 3.5’i ifade etmekte.

win32 32 bit Windows’u win_amd64 ise 64 bit Windows’u ifade etmekte.

manylinux1 Linux’u ifade etmektedir.

Ben Linux’un bir dağıtımı olan Ubuntu 16.04’ü kullandığım için matplotlib-1.5.3-cp35-cp35m-manylinux1_x86_64.whl olan dosyayı indirdim.

Ubuntu 16.04’te Python 3.5 kurulu olarak gelmektedir.

Python sürümünüzü öğrenmek için terminale python3 -V komutunu girmeniz yeterlidir. (Windows’ta python -V)

versiyon

Örnekteki gibi 3.5.2 gibi bir sonuç aldıysanız bu, Python sürümünüzün 3.5 olduğunu ifade eder.

İndirdiğimiz whl uzantılı dosyanın olduğu dizine gidip

gibi bir komutla Python’a matplotlib ve otomatik olarak numpy kütüphanesini kurmuş oluyoruz. (Windows’ta pip3 yerine pip)

Yukarıdaki komuttaki

kısmını indirdiğiniz dosyanın ismiyle değiştirmeniz gerekmektedir.

Kurulumlarımızı doğrulayalım:

versiyon2

Şimdi basit bir örnek yapalım:

ornek1

1. satırda matplotlib.pyplot modülünü (kütüphanesini) programımıza dahil ettik ve plt kısaltmasıyla kullanacağımızı bildirdik.

2. satırda grafiğimizin (1,1), (2,4), (3,9) ve (4,16) noktalarından geçeceğini bildirdik.

3. satırda x eksenine isim verdik.

4. satırda y eksenine isim verdik.

5. satırda grafiğimizi ekranda gösterdik.

hata

Ubuntu’da kodu çalıştırınca yukarıdaki gibi “ImportError: No module named ‘_tkinter’, please install the python3-tk package” şeklinde bir hata ile karşılaşırsak eğer (en son satır)

kurulumunu yapmamız gerekmektedir.

2. örneğimizde y=x2 parabolünü çizdirelim:

 

ornek2

1.  satırda matplotlib.pyplot modülünü (kütüphanesini) programımıza dahil ettik ve plt kısaltmasıyla kullanacağımızı bildirdik.

2. satırda numpy modülünü (kütüphanesini) programımıza dahil ettik ve np kısaltmasıyla kullanacağımızı bildirdik.

4. ve 5. satırda kareAl isminde gelen sayının karesini alıp geri döndüren bir fonksiyon tanımladık.

7. satırda numpy kütüphanesine ait linspace isimli fonksiyon ile [-2,2] aralığında sabit aralıklı 10 değer ürettik ve bunu x değişkenine atadık.

9. satırda x dizimizdeki değerleri plot fonksiyonuyla adeta bir for döngüsündeymiş gibi tek tek kareAl fonksiyonumuza gönderip dönen değere göre grafiğimizi çizdirdik. Örneğin plot fonksiyonu 2 değerini gönderiyorsa kareAl fonksiyonu 4 değerini döndürecektir. ((2,4) noktası.)

10. satırda x eksenine isim verdik.

11. satırda y eksenine isim verdik.

12. satırda matplotlib.pyplot modülüne (kütüphanesine) ait ylim isimli fonksiyon ile grafikte y ekseninin görünürlüğünü [0,3] aralığında sınırlandırdık (kesit aldık).

13. satırda grafiğimizi ekranda gösterdik.

2. örnekte grafiğimiz parabole yakın bir karakter sergilemekte. Tam olarak parabole benzememesinin nedeni aldığımız örnek sayısının azlığıdır.

7. satırda linspace fonksiyonu ile ürettiğimiz değer sayısını 30 yaparsak:

grafiğimiz y=x2 parabolüne daha çok benzeyecektir.

ornek2yeni

Son olarak linspace fonksiyonunun anlaşılması için bir örnek:

linspace

Uzun ve detaylı bir yazının sonuna geldik; maksat her kesimin anlamasını sağlamak, Python ve Linux ortamını bir nebze de olsa sevdirmek. Başka yazılarda görüşmek dileğiyle hoşçakalın.

Referanslar:

http://matplotlib.org/

http://www.numpy.org/