Python Can';t设法绘制熊猫系列的柱状图

Python Can';t设法绘制熊猫系列的柱状图,python,pandas,Python,Pandas,我是一个Python新手,不知何故,我无法在我的数据框架中获得一个简单的列历史图。这是df['col']的内容。descripe()返回: count 2.905430e+05 mean 2.732126e+06 std 5.743739e+08 min 3.095194e-03 25% 2.341733e+03 50% 5.092117e+03 75% 1.092925e+04 max 2.089247e+11 Name

我是一个Python新手,不知何故,我无法在我的数据框架中获得一个简单的列历史图。这是df['col']的内容。descripe()返回:

count    2.905430e+05
mean     2.732126e+06
std      5.743739e+08
min      3.095194e-03
25%      2.341733e+03
50%      5.092117e+03
75%      1.092925e+04
max      2.089247e+11
Name: avg_power_in_w, dtype: float64
我试过:

df['col'].hist(bins=10)
plt.plot()
其结果是:

有些解决方案建议使用
np.histogram(…)
,但感觉不自然

事实上,一个箱子的大小,比如1000个,一个箱子里所有超过10000的东西都很好


谢谢,我希望得到一个提示。

如评论中所述,似乎有些异常值使值的范围变大了。所以最佳实践是

#make a copy of the dataframe, so the data keeps untouched
df_copy = df.copy()

#change the values in the column
df.loc[df[col] > 10000] = 10000

#the print it as usual
df['col'].hist(bins=10)
plt.plot()

这是您要绘制的数据吗?还是要打印的序列对象的
.descripe()
函数?您已经尝试了什么来创建直方图?问题出在哪里?您好,正如您所提到的,这是
.descripe()
返回的内容。我会编辑这篇文章…看起来问题在于有些值比其他大部分值大得多。如果您希望在一个容器中包含10000以上的所有值,则可以简单地将所有大于10000的值替换为10000,然后绘制图形。您可以尝试使用
df.loc[df[col]>10000]=10000
,然后使用与以前相同的代码。谢谢,它可以工作。我建议也使用
df\u copy=df.copy()
进行复制,这样原始数据就不会被触及。