【发布时间】:2021-12-19 11:54:21
【问题描述】:
我对 sns.histplot() 有疑问。据我了解,bins 参数应该指示图中应该有多少个 bin。这是一些代码来可视化奇怪的(至少对我而言)行为。
d = {'col1': [1, 2, 3, 4, 5, 6, 7, 8, 9 , 10 , 11 , 12, 13, 14, 15], 'col2': [1, 1, 1, 1, 1, 1, 2, 2, 2 , 2 , 2, 2, 2, 2, 2]}
df = pd.DataFrame(data=d)
sns.histplot(data=df, x='col1', multiple='dodge', hue='col2', binwidth=2, bins=8)
我在原始代码中遇到了几乎相同的问题:
hist = sns.histplot(data=Data, x=y_data, multiple='dodge', ax=axes[0], hue=i[2][1], binwidth=2, bins=10)
如您所见,只有一个 bin 的数据有其最小值和标准,但它没有分成我声明的 bin 数量。为什么这不将数据拆分为提供的 bin 数量?如何更改代码以确保箱数恒定?
【问题讨论】:
-
在你的第二个情节中,你应该省略
bin_width=2,因为它会使条形太宽。栏杆太宽了,只有最高的可以看到,其余的都被挡住了。宽度以 x 轴上显示的坐标测量(介于 11.75 和 13.50 之间,而您的数据仅介于 11.6 和 12.2 之间)。 -
对于第一部分我打赌你想要
discrete=True。
标签: python python-3.x pandas matplotlib seaborn