簡體   English   中英

Python中的多個直方圖

[英]Multiple Histograms in Python

我有一個具有以下屬性的數據框df

ID                  X1                       X2
0                  3969518                   24700
1                  8111123                   20000
2                  250000                    987000
3                  10745929                  5000

我正在嘗試繪制這樣的多個直方圖

在此處輸入圖片說明

我正在使用seaborn和matplotlib

x1 = df2[['X1']]
x2 = df2[['X2']]
kwargs = dict(histtype='stepfilled', alpha=0.3, normed=True, bins=20)
plt.hist(x1, **kwargs)
plt.hist(x2, **kwargs);

但我得到以下錯誤

TypeError: len() of unsized object

快速修復,您需要考慮數組而不是pandas系列:

x1 = df2[['X1']]
x2 = df2[['X2']]
kwargs = dict(histtype='stepfilled', alpha=0.3, normed=True, bins=20)
plt.hist(x1.values, **kwargs)
plt.hist(x2.values, **kwargs);

或者:

x1 = df2[['X1']]
x2 = df2[['X2']]
kwargs = dict(histtype='stepfilled', alpha=0.3, normed=True, bins=20)
plt.hist(data=x1, x='X1', **kwargs)
plt.hist(data=x2, x='X2', **kwargs);

甚至更好的是,您不需要定義兩個新系列:

kwargs = dict(histtype='stepfilled', alpha=0.3, normed=True, bins=20)
plt.hist(data=df2, x='X1', **kwargs)
plt.hist(data=df2, x='X2', **kwargs);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM