[英]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.