2015-04-22 14 views
6

Bir histogramı çizmek için dağılımı kullanırken y ekseninin birimi nedir? Normal bir uyum ile birlikte farklı histogramları çizdim ve bir durumda 0 ile 0.9 arasında bir menzile sahipken, 0 ile 4.5 arasında bir başka aralığın olduğunu görüyorum.Python'da dağılımı kullanma

Teşekkür ederiz. help(sns.distplot) itibaren

cevap

6

:

norm_hist: bool, otional doğru ise, histogram yüksekliği yoğunluğu yerine bir sayısını gösterir. Bir KDE veya takılmış yoğunluk işaretlenmişse bu ima edilir.

eğri altındaki alan 1 olacak şekilde bir yoğunluk ölçeklenir, bu nedenle tek tek bölmesi hiç 1 (Bütün veri kümesi) daha uzun olacaktır [2]. Ama kde varsayılan olarak açıktır ve norm_hist geçersiz kılar, böylece açıkça kde'ye kapatmak yalnızca norm_hist y-birimlerini değiştirir: mwaskom dan

import matplotlib.pyplot as plt 
import numpy as np 
import seaborn as sns 

fig, axs = plt.subplots(figsize=(6,6), ncols=2, nrows=2) 
data = np.random.randint(0,20,40) 

for row in (0,1): 
    for col in (0,1): 
     sns.distplot(data, kde=row, norm_hist=col, ax=axs[row, col]) 

axs[0,0].set_ylabel('NO kernel density') 
axs[1,0].set_ylabel('KDE on') 
axs[1,0].set_xlabel('norm_hist=False') 
axs[1,1].set_xlabel('norm_hist=True') 

enter image description here

[2] açıklama, teşekkürler!

+2

Bu yardımcı olabilir ama eğrinin altındaki alanın yoğunluğunun ölçeklendirileceği fikrini açıklamak iyi olur. – mwaskom

+0

Teşekkür ederim cphlewis ... – Harry

+0

Sorun yok, Harry. Sorunuzu cevaplarsa bitince kontrol et. – cphlewis

İlgili konular