Ana içeriğe atla

Python ile Matplotlib'de Çizgi Grafikleri

Bu uygulamalı eğitim, Python’daki güçlü veri görselleştirme kütüphanesi Matplotlib ile çizgi grafikleri oluşturma ve özelleştirmeye derinlemesine dalar.
Güncel 3 Eki 2026  · 11 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Veri görselleştirme ve hikâyeleştirme, karmaşık veri içgörülerini etkili iletişim için ilgi çekici ve kolay anlaşılır anlatılara dönüştürdükleri için veri bilimciler açısından kritik öneme sahiptir. Yeni ve havalı kütüphaneler çıksa da Matplotlib hâlâ en popüler çizim kütüphanelerinden biridir ve yenilerinin temelini oluşturur.

Bu eğitim, Matplotlib grafiklerinin en yaygın türlerinden biri olan çizgi grafiğine odaklanır. Çizgi grafikleri, zaman içindeki eğilimleri ve dalgalanmaları net biçimde göstererek noktaları (kelimenin tam anlamıyla) birleştirip olup biteni canlı bir şekilde resmetmekte mükemmeldir.

Bu eğitim, basit bir çizgi grafiği oluşturmanın temelleriyle başlar ve ardından grafiklere istatistiksel bilgi eklemek gibi daha ileri tekniklere geçer. Eğitimin sonunda, Matplotlib’de farklı türlerde çizgi grafikleri oluşturmayı ve bunları veri içgörülerinizi başkalarına etkili bir şekilde aktarmak için nasıl kullanacağınızı sağlam biçimde kavramış olacaksınız.

Veri görselleştirme becerilerinizi geliştirmeye hazır mısınız? Hadi başlayalım!

Kitaplıklar, Veri ve Ön İşleme

Matplotlib ile çizgi grafikleri oluşturmaya başlamadan önce ortamımızı hazırlamamız gerekir. Bu, Matplotlib’in kurulmasını, gerekli kitaplıkların içe aktarılmasını ve örneklerde kullanacağımız veri kümesinin ön işlenmesini içerir.

Matplotlib'in kurulması

Matplotlib’i kurmak için Python’un paket yükleyicisi olan pip’i kullanabilirsiniz. Bir terminal veya komut istemi açıp şunu yazmanız yeterlidir:

pip install matplotlib

Bu, bilgisayarınıza Matplotlib’in en güncel sürümünü kuracaktır.

Gerekli kitaplıkların içe aktarılması

Matplotlib kurulduktan sonra, NumPy ve Pandas gibi diğer gerekli kitaplıklarla birlikte içe aktarmalıyız. NumPy dizilerle çalışmak için, Pandas ise veri işleme ve analiz için kullanılır.

Bu kitaplıkları içe aktarmak için aşağıdaki kodu yazın:

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

Verinin okunması ve ön işlenmesi

Bu eğitimde, DJIA endeksinin günlük fiyatlarını içeren bir veri kümesini kullanacağız. Veri kümesi beş sütun içerir: 

  • Date sütunu, geri kalan hisse senedi fiyatı bilgilerinin kaydedildiği tarihi sağlar
  • Open, Close: İlgili günde piyasanın açılış ve kapanışındaki DJIA fiyatı
  • High, Low: DJIA’nın ilgili gün ulaşmış olduğu en yüksek ve en düşük fiyat

Veri kümesini yükledikten sonra, sütunları yeniden adlandırma, datetime değişkenine dönüştürme ve veriyi tarihe göre artan sırada sıralama gibi bazı temel ön işleme adımları uygularız.

Yukarıdakilerin kodu şöyledir:

# Load the dataset into a Pandas DataFrame
df = pd.read_csv("HistoricalPrices.csv")

# Rename the column to remove an additional space
df = df.rename(columns = {' Open': 'Open', ' High': 'High', ' Low': 'Low', ' Close': 'Close'})

# Convert the date column to datetime
df['Date'] = pd.to_datetime(df['Date'])

# Sort the dataset in the ascending order of date
df = df.sort_values(by = 'Date')

Artık ortamı hazırlayıp veri kümesini yüklediğimize göre, Matplotlib kullanarak çizgi grafikleri oluşturmaya geçebiliriz.

Matplotlib'de Temel Bir Çizgi Grafiği Oluşturma

Önce temel bir çizgi grafiği oluşturacak, ardından grafiği daha sunulabilir ve bilgilendirici hale getirmek için özelleştireceğiz.

Çizgi grafiği oluşturmak için plt.plot() kullanma

Bir çizgi grafiği oluşturmak için plt.plot() fonksiyonunu kullanacağız. Bu fonksiyon iki parametre alır; x ekseni değerleri ve y ekseni değerleri. Bizim durumumuzda x ekseni değerleri tarih sütunu, y ekseni değerleri ise kapanış (close) sütunu olacaktır. Kod şu şekildedir:

# Extract the date and close price columns
dates = df['Date']
closing_price = df['Close']

# Create a line plot
plt.plot(dates, closing_price)

# Show the plot
plt.show()

Yukarıdaki kodu çalıştırdığınızda DJIA hissesinin temel bir çizgi grafiğini görmelisiniz. 

matplotlib'de çizgi grafiği

Çizgi Grafiğini Özelleştirme

Matplotlib, ihtiyaçlarımıza göre yararlanabileceğimiz pek çok özelleştirme sunar.

Çizgi rengini ayarlama

Varsayılan olarak plt.plot() fonksiyonu mavi bir çizgi çizer. Ancak fonksiyona bir color parametresi vererek çizgi rengini değiştirebilirsiniz. color parametresi, renk adını temsil eden bir dize veya onaltılık bir kod alabilir. 

İşte bir örnek:

# Plot in Red colour
plt.plot(dates, closing_price, color='red')

# Show the plot
plt.show()

Bu kod, aşağıda gösterildiği gibi mavi yerine kırmızı bir çizgi çizecektir:

matplotlib'de çizgi grafiği için çizgi rengini ayarlama

Kırmızı renkte temel çizgi grafiği

Çizgi kalınlığını ayarlama

plt.plot() fonksiyonuna bir linewidth parametresi vererek çizgi kalınlığını da değiştirebilirsiniz. linewidth parametresi, çizginin kalınlığını temsil eden bir kayan noktalı değer alır. 

İşte bir örnek:

# Increasing the linewidth
plt.plot(dates, closing_price, linewidth=3)

# Show the plot
plt.show()

Bu kod, varsayılan kalınlık yerine 3 genişliğinde bir çizgi çizecektir, aşağıda gösterildiği gibi: 

matplotlib'de çizgi grafiği için çizgi kalınlığını ayarlama

Daha yüksek linewidth nedeniyle grafikte daha kalın çizgiler

Çizgi stilini ayarlama

plt.plot() fonksiyonuna bir linestyle parametresi vererek çizgi stilini değiştirebilirsiniz. linestyle parametresi, çizgi stilini temsil eden bir dize alır. Kullanılabilir stillerin kapsamlı bir listesi matplotlib belgelerinde mevcuttur. 

matplotlib'de çizgi grafiği için çizgi stilini ayarlama

Kodda bunların kullanımı şöyledir:

# Individually plot lines in solid, dotted, dashed and dashdot

plt.plot(dates, closing_price, linestyle='solid') # Default line style
plt.plot(dates, closing_price, linestyle='dotted')
plt.plot(dates, closing_price, linestyle='dashed')
plt.plot(dates, closing_price, linestyle='dashdot')

# Show the plot
plt.show()

Çizgi grafiklerine işaretleyici ekleme

İşaretleyiciler, çizgi grafikteki belirli noktaları vurgulamak için kullanılabilir. Farklı semboller işaretleyici olarak kullanılabilir ve matplotlib belgelerinden referans alınabilir.

İşte bir çizgi grafikte işaretleyici kullanmaya bir örnek:

# Add a cross marker for each point
plt.plot(df['Date'], df['Close'], marker='x')

# Show the plot
plt.show()

Yukarıdaki kodda, DJIA hissesinin Close fiyatlarını vurgulamak için çarpı (x) işaretleyicileri kullanıyoruz, aşağıda gösterildiği gibi: 

matplotlib'de çizgi grafiğine işaretleyici ekleme

Etiketler ve başlık ekleme

Grafiği daha bilgilendirici hale getirmek için eksen etiketleri ve bir başlık ekleyebiliriz. Bunu sırasıyla plt.xlabel(), plt.ylabel() ve plt.title() fonksiyonlarını kullanarak yapabiliriz. 

İşte bir örnek:

plt.plot(dates, closing_price, color='red', linewidth=2)
plt.xlabel('Date')
plt.ylabel('Closing Price')
plt.title('DJIA Stock Price')

# Show the plot
plt.show()

Bu kod, 2 kalınlığında kırmızı bir çizgi çizer; x ekseni ‘Date’, y ekseni ‘Closing Price’ olarak etiketlenir ve başlık ‘DJIA Stock Price’ olur. 

matplotlib'de çizgi grafiğine etiket ve başlık ekleme

Izgara çizgileri ekleme

Grafiğimizi daha okunaklı kılmak için ızgara çizgileri de ekleyebiliriz. Bunu plt.grid() fonksiyonunu kullanarak yapabiliriz. plt.grid() fonksiyonu, ızgaranın gösterilip gösterilmeyeceğini belirten bir boole değeri alır. 

İşte bir örnek: 

plt.plot(dates, closing_price, color='red', linewidth=2)
plt.xlabel('Date')
plt.ylabel('Closing Price')
plt.title('DJIA Stock Price')

# Add the grid
plt.grid(True)

# Show the plot
plt.show()

Grafikte ızgaraların eklendiğini görürsünüz: 

matplotlib'de çizgi grafiğine ızgara çizgileri ekleme

Birden Fazla Çizgili Matplotlib Çizgi Grafikleri

Bazı durumlarda aynı grafikte birden fazla çizgi çizmek isteyebilirsiniz. Bunu yapmak için, her çağrıda farklı verilerle plt.plot() fonksiyonunu birden çok kez çağırabilirsiniz. İşte bir örnek:

# Line plot of Open and Close prices

plt.plot(df['Date'], df['Open'])
plt.plot(df['Date'], df['Close'])
plt.title('DJIA Open and Close Prices')
plt.xlabel('Date')
plt.ylabel('Price')

plt.show()

Yukarıdaki kodda, DJIA hissesinin hem Open hem de Close fiyatlarını aynı grafikte çiziyoruz. 

matplotlib'de çizgi grafiğine ikinci bir çizgi ekleme

İkiz Eksenli Matplotlib Çizgi Grafikleri

Bazen aynı grafikte farklı ölçeklere sahip iki değişkeni göstermek isteyebilirsiniz. Bu tür durumlarda, ikiz eksenler kullanmak, değişkenler arasındaki ilişkiyi bireysel ölçeklerin netliğini kaybetmeden görselleştirmenin etkili bir yoludur. 

İkiz eksenli bir çizgi grafiği oluşturmak için twinx() fonksiyonunu kullanmamız gerekir. Bu fonksiyon, orijinal grafikle aynı x eksenini paylaşan yeni bir y ekseni oluşturur. 

İşte bir örnek:

# Create a new variable for demonstration purposes
df['High_minus_Low'] = df['High'] - df['Low']

# Create a basic line plot for the Close prices
fig, ax1 = plt.subplots()
ax1.plot(df['Date'], df['Close'], color='blue', label='Close Price')
ax1.set_xlabel('Date')
ax1.set_ylabel('Closing Price', color='blue')
ax1.tick_params(axis='y', labelcolor='blue')

# Create a twin axis for the High_minus_Low variable
ax2 = ax1.twinx()
ax2.plot(df['Date'], df['High_minus_Low'], color='green', label='High - Low')
ax2.set_ylabel('High minus Low', color='green')
ax2.tick_params(axis='y', labelcolor='green')

# Add a title and show the plot
plt.title('DJIA Stock Price and High-Low Difference with Twin Axes')
plt.show()

Ve ikiz eksenli ortaya çıkan grafik: 

matplotlib'de çizgi grafiğine ikinci eksen ekleme

Matplotlib Çizgi Grafiklerine İstatistiksel Bilgi Ekleme

Verideki eğilimleri ve desenleri görselleştirmenin yanı sıra, çizgi grafikleri regresyon çizgileri ve hata çubukları gibi istatistiksel bilgileri de gösterebilir. 

Matplotlib regresyon çizgisi ekleme

Regresyon çizgisi, bir grafikteki veri noktalarına en iyi uyan çizgidir ve gelecekteki değerleri modellemek ve tahmin etmek için kullanılabilir. Veri noktalarımıza polinom regresyon çizgisi uyduran NumPy kitaplığındaki polyfit() fonksiyonunu kullanarak grafiklerimize bir regresyon çizgisi ekleyebiliriz. 

import matplotlib.dates as mdates

# Convert Date column to numeric value
df['Date'] = mdates.date2num(df['Date'])

# Add regression line to plot
coefficients_open = np.polyfit(df['Date'], df['Open'], 1)
p_open = np.poly1d(coefficients_open)

coefficients_close = np.polyfit(df['Date'], df['Close'], 1)
p_close = np.poly1d(coefficients_close)

fig, ax = plt.subplots()
ax.plot(df['Date'], df['Open'], '.', label='Open Price')
ax.plot(df['Date'], p_open(df['Date']), '-', label='Open Regression Line')
ax.plot(df['Date'], df['Close'], '.', label='Close Price')
ax.plot(df['Date'], p_close(df['Date']), '-', label='Close Regression Line')
ax.set_title('DIJA Stock Prices')
ax.set_xlabel('Date')
ax.set_ylabel('Price')
ax.legend()

# Format x-axis labels as dates
date_form = mdates.DateFormatter("%Y-%m-%d")
ax.xaxis.set_major_formatter(date_form)
plt.gcf().autofmt_xdate()

plt.show()

Bu kodda, önce date2num() fonksiyonunu kullanarak tarihleri sayısal değerlere dönüştürüyor, ardından regresyon çizgisi için katsayıları elde etmek üzere polyfit() fonksiyonunu kullanıyoruz. Çizgiyi çizdirmek için poly1d() fonksiyonunu kullanıyoruz. Orijinal veri noktalarını noktalarla, regresyon çizgisini ise düz bir çizgiyle çiziyoruz. 

matplotlib'de çizgi grafiğine regresyon çizgisi ekleme

Hata çubukları ekleme

Hata çubukları, verinin değişkenliğinin grafiksel bir temsilidir ve ölçümlerdeki belirsizliği göstermek için kullanılabilir.

Bu, sıcaklık verisi, hava kalitesi verisi vb. gibi veri toplama sürecinde bazı hatalar beklediğiniz durumlarda özellikle faydalıdır. Hisse senedi fiyatlarından emin olsak da bir standart sapma büyüklüğünde potansiyel bir hata varsayalım ve bunu Matplotlib’deki errorbar fonksiyonunu kullanarak çizelim.

# Calculate standard deviation of data
std = df['Close'].std()

# Add error bars to plot
plt.errorbar(df['Date'], df['Close'], yerr=std/2, fmt='.', label='Close Price')
plt.title('DIJA Stock Prices')
plt.xlabel('Date')
plt.ylabel('Price')
plt.legend()
plt.show()

Bu kodda, önce veri kümemizdeki Close fiyatlarının standart sapmasını hesaplıyoruz. Ardından errorbar() fonksiyonunu kullanarak çizgi grafiğine hata çubukları ekliyoruz; hata çubuğu boyutunu standart sapmanın yarısı olacak şekilde ayarlıyoruz. 

matplotlib'de çizgi grafiğine hata çubukları ekleme

Bu teknikler, çizgi grafiklerimize istatistiksel bilgi eklememize ve verilerimiz hakkında daha derin içgörüler elde etmemize olanak tanır.

Sonuç

Çizgi grafikleri, verideki eğilimleri ve desenleri görselleştirmek için güçlü bir araçtır ve Matplotlib bunları oluşturmak için kullanıcı dostu bir arayüz sunar. 

Bir sonraki adım olarak, öğrendiklerinizi bir hacker istatistikleri vaka çalışmasına uyguladığınız Orta Düzey Python kursumuzu takip etmek isteyebilirsiniz. 

Umarız bu eğitim, Matplotlib’de çizgi grafikleri oluşturmaya başlamanıza yardımcı olmuştur. Ayrıca başka bir eğitimde diğer matplotlib grafiklerini de kapsamlı biçimde ele aldık; bu da Matplotlib ile başka neler yapabileceğinize kısa bir giriş sağlayabilir. 

Verilerinizden içgörüleri ortaya çıkaran çarpıcı görselleştirmeler oluşturmayı keşfetmeye ve denemeye devam edin!

Konular
Veri Görselleştirme
Python
İlgili

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını GörDevamını Gör