Python, adı verilen en popüler çizim kütüphanelerinden birini sağlar. Matplotlib . Dizideki verilerden 2 boyutlu grafikler oluşturmaya yönelik açık kaynaklı, çapraz platformdur. Genellikle veri görselleştirmesi için kullanılır ve çeşitli grafiklerle temsil edilir.
Matplotlib ilk olarak 2003 yılında John D. Hunter tarafından tasarlandı. Matplotlib'in son sürümü Ocak 2018'de yayımlanan 2.2.0'dır.
Matplotlib kütüphanesi ile çalışmaya başlamadan önce Python ortamımıza kurulum yapmamız gerekiyor.
Matplotlib'in kurulumu
Aşağıdaki komutu terminalinize yazın ve enter tuşuna basın.
pip install matplotlib
Yukarıdaki komut matplotlib kütüphanesini ve bağımlılık paketini Windows işletim sistemine kuracaktır.
Matplotlib'in Temel Kavramı
Bir grafik aşağıdaki bölümleri içerir. Bu kısımları anlayalım.
Figür: Bir veya daha fazla eksen (grafik) tutabilen bir figür bütünüdür. Figürü olay örgüsünü barındıran bir tuval olarak düşünebiliriz.
Eksenler: Bir Şekil birden fazla Eksen içerebilir. İki veya üç (3 boyutlu olması durumunda) Eksen nesnesinden oluşur. Her Eksen bir başlık, bir x etiketi ve bir y etiketinden oluşur.
Eksen: Eksenler çizgi benzeri nesnelerin sayısıdır ve grafik sınırlarının oluşturulmasından sorumludur.
Sanatçı: Sanatçı, Metin nesneleri, Line2D nesneleri ve koleksiyon nesneleri gibi grafikte gördüğümüz her şeydir. Çoğu Sanatçı Axes'a bağlıdır.
Pyplot'a giriş
Matplotlib, verilen verilerin grafiğini çizmek için kullanılan pyplot paketini sağlar. matplotlib.pyplot matplotlib'in MATLAB gibi çalışmasını sağlayan bir dizi komut stili işlevidir. Pyplot paketi, bir şekil oluşturmak, bir şekilde çizim alanı oluşturmak, çizimi etiketlerle süslemek, çizim alanındaki bazı çizgileri çizmek vb. için kullanılan birçok işlevi içerir.
dize için karakter
Pyplot ile hızlı bir şekilde grafik çizebiliriz. Aşağıdaki örneğe bir göz atalım.
Grafiğin Çizilmesine İlişkin Temel Örnek
İşte basit bir grafik oluşturmanın temel örneği; program şöyle:
from matplotlib import pyplot as plt #ploting our canvas plt.plot([1,2,3],[4,5,1]) #display the graph plt.show()
Çıktı:
Farklı Türde Grafiklerin Çizilmesi
Pyplot modülünü kullanarak çeşitli grafikleri çizebiliriz. Aşağıdaki örnekleri anlayalım.
1. Çizgi Grafiği
Çizgi grafiği, bilgileri bir çizgi dizisi halinde görüntülemek için kullanılır. Plan yapmak kolaydır. Aşağıdaki örneği düşünün.
Örnek -
from matplotlib import pyplot as plt x = [1,2,3] y = [10,11,12] plt.plot(x,y) plt.title('Line graph') plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
Çıktı:
Hat çeşitli işlevler kullanılarak değiştirilebilir. Grafiği daha çekici hale getirir. Aşağıda örnek bulunmaktadır.
Örnek -
from matplotlib import pyplot as plt from matplotlib import style style.use('ggplot') x = [10, 12, 13] y = [8, 16, 6] x2 = [8, 15, 11] y2 = [6, 15, 7] plt.plot(x, y, 'b', label='line one', linewidth=5) plt.plot(x2, y2, 'r', label='line two', linewidth=5) plt.title('Epic Info') fig = plt.figure() plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
2. Çubuk Grafik
Çubuk grafik en yaygın grafiklerden biridir ve kategorik değişkenlerle ilişkili verileri temsil etmek için kullanılır. çubuk() işlev üç bağımsız değişkeni kabul eder: kategorik değişkenler, değerler ve renk.
Örnek -
from matplotlib import pyplot as plt Names = ['Arun','James','Ricky','Patrick'] Marks = [51,87,45,67] plt.bar(Names,Marks,color = 'blue') plt.title('Result') plt.xlabel('Names') plt.ylabel('Marks') plt.show()
3. Pasta Grafiği
Grafik, alt bölüme veya segmente bölünmüş dairesel bir grafiktir. Her pasta diliminin belirli bir kategoriyi temsil ettiği yüzde veya orantısal verileri temsil etmek için kullanılır. Aşağıdaki örneği anlayalım.
Örnek -
java koleksiyonları
from matplotlib import pyplot as plt # Pie chart, where the slices will be ordered and plotted counter-clockwise: Aus_Players = 'Smith', 'Finch', 'Warner', 'Lumberchane' Runs = [42, 32, 18, 24] explode = (0.1, 0, 0, 0) # it 'explode' the 1st slice fig1, ax1 = plt.subplots() ax1.pie(Runs, explode=explode, labels=Aus_Players, autopct='%1.1f%%', shadow=True, startangle=90) ax1.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle. plt.show()
Çıktı:
4. Histogram
Histogram ve çubuk grafik oldukça benzer ancak aralarında küçük bir fark var. Dağılımı temsil etmek için bir histogram kullanılır ve farklı varlıkları karşılaştırmak için çubuk grafik kullanılır. Bir histogram genellikle bir dizi değer aralığına kıyasla bir dizi değerin sıklığını çizmek için kullanılır.
Aşağıdaki örnekte öğrencinin farklı puan yüzdelerinin verilerini aldık ve histogramı öğrenci sayısına göre çizdik. Aşağıdaki örneği anlayalım.
Örnek -
from matplotlib import pyplot as plt from matplotlib import pyplot as plt percentage = [97,54,45,10, 20, 10, 30,97,50,71,40,49,40,74,95,80,65,82,70,65,55,70,75,60,52,44,43,42,45] number_of_student = [0,10,20,30,40,50,60,70,80,90,100] plt.hist(percentage, number_of_student, histtype='bar', rwidth=0.8) plt.xlabel('percentage') plt.ylabel('Number of people') plt.title('Histogram') plt.show()
Çıktı:
Başka bir örneği anlayalım.
Örnek - 2:
from matplotlib import pyplot as plt # Importing Numpy Library import numpy as np plt.style.use('fivethirtyeight') mu = 50 sigma = 7 x = np.random.normal(mu, sigma, size=200) fig, ax = plt.subplots() ax.hist(x, 20) ax.set_title('Historgram') ax.set_xlabel('bin range') ax.set_ylabel('frequency') fig.tight_layout() plt.show()
Çıktı:
5. Dağılım Grafiği
Dağılım grafiği, değişkeni diğer değişkenlere göre karşılaştırmak için kullanılır. Bir değişkenin diğer değişkeni nasıl etkilediği olarak tanımlanır. Veriler bir nokta koleksiyonu olarak temsil edilir. Aşağıdaki örneği anlayalım.
Örnek -
from matplotlib import pyplot as plt from matplotlib import style style.use('ggplot') x = [4,8,12] y = [19,11,7] x2 = [7,10,12] y2 = [8,18,24] plt.scatter(x, y) plt.scatter(x2, y2, color='g') plt.title('Epic Info') plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
Çıktı:
Örnek - 2:
import matplotlib.pyplot as plt a = [2, 2.5, 3, 3.5, 4.5, 4.7, 5.0] b = [7.5, 8, 8.5, 9, 9.5, 10, 10.5] a1 = [9, 8.5, 9, 9.5, 10, 10.5, 12] b1 = [3, 3.5, 4.7, 4, 4.5, 5, 5.2] plt.scatter(a, b, label='high income low saving', color='b') plt.scatter(a1, b1, label='low income high savings', color='g') plt.xlabel('saving*100') plt.ylabel('income*1000') plt.title('Scatter Plot') plt.legend() plt.show()
Çıktı:
Bu derste veri görselleştirmede kullanılan tüm temel grafik türlerini tartıştık. Grafik hakkında daha fazla bilgi edinmek için matplotlib eğitimimizi ziyaret edin.