Data Visualization

Matplotlib Alt Grafik Boyutlarında Üç Etkili Yöntem

Spread the love

Matplotlib, görselleştirme oluşturmak için güçlü araçlar sunar ve alt grafik boyutlarını özelleştirmek etkili iletişim için çok önemlidir. Bu makale, Matplotlib’te değişen boyutlarda alt grafikler oluşturmak için üç yöntemi inceleyerek her biri için net örnekler ve açıklamalar sağlar.

İçindekiler

Esnek Alt Grafik Düzenleri için gridspec Kullanımı

matplotlib.gridspec modülü, değişen boyutlarda alt grafikler oluşturmak için en esnek yaklaşımı sağlar. Bir ızgara tanımlamanıza ve ardından height_ratios ve width_ratios kullanarak göreceli boyutlarını kontrol ederek alt grafikleri bu ızgaranın belirli bölgelerine atamanıza olanak tanır.


import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

fig = plt.figure(figsize=(10, 6))
gs = gridspec.GridSpec(nrows=2, ncols=2, height_ratios=[2, 1], width_ratios=[1, 2])

ax1 = fig.add_subplot(gs[0, 0])
ax2 = fig.add_subplot(gs[0, 1])
ax3 = fig.add_subplot(gs[1, :])  # İki sütunu kapsayan

ax1.plot([1, 2, 3], [4, 5, 6])
ax2.plot([1, 2, 3], [6, 4, 5])
ax3.plot([1, 2, 3, 4, 5], [2, 4, 1, 3, 5])

plt.tight_layout()
plt.show()

Bu kod, üst satırı alt satırdan iki kat daha uzun ve sağ sütunu sol sütundan iki kat daha geniş olacak şekilde 2×2’lik bir ızgara oluşturur. Her alt grafik daha sonra belirtilen alanına eklenir.

Özlü Kontrol için gridspec_kw‘dan Yararlanma

Daha basit düzenler için, plt.subplots() içindeki gridspec_kw argümanı daha özlü bir alternatif sunar. Açık gridspec nesnesi oluşturmayı gerektirmeden gridspec işlevselliğini doğrudan entegre eder.


import matplotlib.pyplot as plt

fig, axes = plt.subplots(2, 2, figsize=(10, 6), gridspec_kw={'height_ratios': [2, 1], 'width_ratios': [1, 2]})

axes[0, 0].plot([1, 2, 3], [4, 5, 6])
axes[0, 1].plot([1, 2, 3], [6, 4, 5])
axes[1, 0].plot([1, 2, 3], [2, 4, 1])
axes[1, 1].plot([1, 2, 3], [5, 3, 1])

plt.tight_layout()
plt.show()

Bu, gridspec örneğiyle benzer bir sonucu ancak daha temiz bir sözdizimiyle elde eder. Burada her alt grafiğin tek bir hücreyi kapladığına dikkat edin; birden fazla hücreyi kapsamak daha esnek gridspec yaklaşımını gerektirir.

subplot2grid ile Hassas Yerleştirme

subplot2grid işlevi, alt grafik yerleşimi üzerinde satır ve sütun indeksleri ve her alt grafiğin boyutunu ve ızgara içindeki konumunu tanımlamak için rowspan ve colspan öznitelikleri kullanarak hassas kontrol sağlar.


import matplotlib.pyplot as plt

fig = plt.figure(figsize=(10, 6))

ax1 = plt.subplot2grid((2, 2), (0, 0), rowspan=1, colspan=1)
ax2 = plt.subplot2grid((2, 2), (0, 1), rowspan=1, colspan=2)
ax3 = plt.subplot2grid((2, 2), (1, 0), rowspan=1, colspan=2)

ax1.plot([1, 2, 3], [4, 5, 6])
ax2.plot([1, 2, 3], [6, 4, 5])
ax3.plot([1, 2, 3, 4, 5], [2, 4, 1, 3, 5])

plt.tight_layout()
plt.show()

Güçlü olmasına rağmen, subplot2grid karmaşık düzenler için daha az okunabilir hale gelebilir. İhtiyaçlarınıza en uygun yöntemi seçin: Esneklik için gridspec, özlü basit düzenler için gridspec_kw ve bireysel alt grafik konumları üzerinde hassas kontrol için subplot2grid.

Çakışan öğeleri önlemek ve temiz ve profesyonel bir görünüm sağlamak için her zaman plt.tight_layout() kullanmayı unutmayın.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir