下面显示的是条形图的分类数据详细信息,它来自特定的 DataFrame
列,即。 coast
```
import seaborn as sns
import matplotlib as mpl
import matplotlib.pyplot as plt
IN: data['coast'].dtypes
OUT:
CategoricalDtype(categories=[0, 1], ordered=False)
IN: data['coast'].value_counts()
OUT:
0 21450
1 163
Name: coast, dtype: int64
下面显示的语法是用于获取条形图的已定义函数。
def code(c):
plt.rc('figure', figsize=(10, 5))
ax = c.value_counts().plot(kind='bar')
for value in ax:
height = value.get_height()
plt.text(value.get_x() + value.get_width()/2.,
1.002*height,'%d' % int(height), ha='center', va='bottom')
但是,条形图显示时,条形图上没有如下所示的值。
IN: code(data['coast'])
OUT:
![](https://i.stack.imgur.com/KhRbD.png)
但出现以下错误消息
TypeError: 'AxesSubplot' object is not iterable
如何解决上述错误以获得下面的条形图。
![](https://i.stack.imgur.com/Oz00f.png)
1条答案
按热度按时间lokaqttq1#
正如@henry ecker所评论的,您应该迭代ax.patches。pandas plot函数返回的是轴,而不是面片/矩形。
或者,只需绘制图并获得自己的值计数。条形图的x轴只是一个0到条数的数组(本例中为2)。