Python Seaborn distplot仅用于整数

Python Seaborn distplot仅用于整数,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,如何使seaborn的distplot只包含整数 我的数据是一个介于0到18之间的数字数组。我想画出这些数字的分布图 Impressions 0 210 1 1084 2 2559 3 4378 4 5500 5 5436 6 4525 7 3329 8 2078 9 1166 10 586 11 244 12 105 13 51 14 18 15 5 16

如何使seaborn的distplot只包含整数

我的数据是一个介于0到18之间的数字数组。我想画出这些数字的分布图

Impressions
0      210
1     1084
2     2559
3     4378
4     5500
5     5436
6     4525
7     3329
8     2078
9     1166
10     586
11     244
12     105
13      51
14      18
15       5
16       3
dtype: int64
我正在使用的代码:

sns.distplot(Impressions,
              # bins=np.arange(Impressions.min(), Impressions.max() + 1),
              # kde=False,
             axlabel=False,
             hist_kws={'edgecolor':'black', 'rwidth': 1})
plt.xticks = range(current.Impressions.min(), current.Impressions.max() + 1, 1)
绘图如下所示:

我期待的是:

  • xlabel应该是整数
  • 酒吧应该互相接触
  • kde线应该只连接条的顶部。从外观上看,当前一个假设在
    (x,x+1)
    之间有0,因此为什么会出现向下尖峰(这不是必需的,我可以关闭kde)


我是否为作业使用了正确的工具,或者distplot不应用于整数?

对于您的问题,可以通过以下代码解决

import seaborn as sns # for data visualization
import numpy as np # for numeric computing
import matplotlib.pyplot as plt # for data visualization

arr = np.array([1,2,3,4,5,6,7,8,9])

sns.distplot(arr, bins = arr, kde = False)
plt.xticks(arr)
plt.show()

通过这种方式,您可以使用seaborn
sns.distplot()
函数绘制直方图


注意:您将传递到bins和plt.xticks()的任何数据。这应该是一个升序。

哦,看起来我要找的是
sns.countplot
。虽然我仍然想知道是否可以根据我的场景调整
distplot