Data Visualization

Matplotlib Histogram’larında Hassas Aralık Kontrolü

Spread the love

Matplotlib’in hist() fonksiyonu, veri dağılımlarını görselleştirmek için güçlü araçlar sunar. Ancak, varsayılan otomatik bölmelendirme bazen önemli ayrıntıları gizleyebilir veya yanlış yorumlamalara yol açabilir. Doğru ve bilgilendirici görselleştirmeler oluşturmak için bölme boyutuna hassas bir şekilde hakim olmak esastır. Bu makale, bunu başarmak için iki etkili yöntemi ele almaktadır.

İçerik Tablosu

Bölme Kenarlarını Doğrudan Belirleme

Bölme boyutunu kontrol etmenin en doğrudan yaklaşımı, hist() fonksiyonundaki bins parametresini kullanarak bölme kenarlarını açıkça tanımlamaktır. Bu, her bölmenin sınırlarına tam kontrol sağlar.


import matplotlib.pyplot as plt
import numpy as np

# Örnek veri
data = np.random.randn(1000)

# Bölme kenarlarını tanımlayın (örneğin, -4'ten 4'e kadar 0.5 genişliğinde bölmeler)
bin_edges = np.arange(-4, 4.1, 0.5)  

# Histogramı oluşturun
plt.hist(data, bins=bin_edges)
plt.xlabel("Değer")
plt.ylabel("Frekans")
plt.title("Açıkça Tanımlanmış Bölme Kenarlarına Sahip Histogram")
plt.show()

Bu kod, -4 ile 4 arasında 0.5 genişliğinde bölmelere sahip bir histogram oluşturur. bin_edges dizisi, her bölmenin sınırlarını tam olarak tanımlar. bin_edges‘deki son değer, son bölmenin üst sınırını belirler. Bu aralığın dışındaki veri noktaları hariç tutulacaktır. Verilerinizi ve istenen bölme genişliğini kapsayacak şekilde bin_edges‘i gerektiği gibi ayarlayın.

İstenilen Genişlikten Bölmeleri Hesaplama

Alternatif olarak, istenen bölme genişliğini biliyor ancak kesin kenarları bilmiyorsanız, verilerinizin aralığına ve istenen genişliğe göre gereken bölme sayısını hesaplayın. Matplotlib daha sonra uygun bölme kenarlarını otomatik olarak belirleyecektir.


import matplotlib.pyplot as plt
import numpy as np

# Örnek veri
data = np.random.randn(1000)

# İstenilen bölme genişliği
bin_width = 0.5

# Bölme sayısını hesaplayın
data_min = np.min(data)
data_max = np.max(data)
num_bins = int((data_max - data_min) / bin_width)

# Histogramı oluşturun
plt.hist(data, bins=num_bins)
plt.xlabel("Değer")
plt.ylabel("Frekans")
plt.title("Hesaplanmış Bölme Sayısına Sahip Histogram")
plt.show()

# Daha hassas kontrol için, bölme kenarlarını açıkça hesaplayın:
bin_edges = np.linspace(data_min, data_max, num_bins + 1) # Düzgün aralık için linspace kullanın
plt.hist(data, bins=bin_edges)
plt.xlabel("Değer")
plt.ylabel("Frekans")
plt.title("Hassas Bir Şekilde Hesaplanmış Bölme Kenarlarına Sahip Histogram")
plt.show()

Bu kod önce num_bins‘i hesaplar. Matplotlib daha sonra bunu tüm veri noktalarının dahil edilmesini sağlayarak bölme kenarlarını otomatik olarak ayarlamak için kullanır. İkinci kısım, daha hassas kontrol için bin_edges‘in nasıl hesaplanacağını göstermektedir. Matplotlib bu kenarları biraz ayarlayabilir.

Bu yöntemlerden birini kullanarak, Matplotlib histogramınızdaki bölmelendirmeyi hassas bir şekilde kontrol edebilir ve daha net ve bilgilendirici veri görselleştirmeleri elde edebilirsiniz. İhtiyaçlarınıza ve istenen kontrol seviyenize en uygun yöntemi seçin.

Bir yanıt yazın

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