首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在seaborn countplot中将百分比添加到条形图顶部的问题

可以通过以下步骤解决:

  1. 导入必要的库和数据集:
代码语言:txt
复制
import seaborn as sns
import matplotlib.pyplot as plt

# 导入数据集
data = sns.load_dataset('tips')
  1. 使用seaborn绘制countplot:
代码语言:txt
复制
sns.countplot(x='day', data=data)
  1. 计算每个类别的百分比:
代码语言:txt
复制
# 计算每个类别的百分比
total = len(data['day'])
counts = data['day'].value_counts()
percentages = [(count/total)*100 for count in counts]
  1. 在条形图顶部添加百分比标签:
代码语言:txt
复制
# 在条形图顶部添加百分比标签
for i, p in enumerate(ax.patches):
    x = p.get_x() + p.get_width() / 2
    y = p.get_height()
    ax.annotate(f'{percentages[i]:.1f}%', (x, y), ha='center', va='bottom')

完整的代码示例:

代码语言:txt
复制
import seaborn as sns
import matplotlib.pyplot as plt

# 导入数据集
data = sns.load_dataset('tips')

# 绘制countplot
ax = sns.countplot(x='day', data=data)

# 计算每个类别的百分比
total = len(data['day'])
counts = data['day'].value_counts()
percentages = [(count/total)*100 for count in counts]

# 在条形图顶部添加百分比标签
for i, p in enumerate(ax.patches):
    x = p.get_x() + p.get_width() / 2
    y = p.get_height()
    ax.annotate(f'{percentages[i]:.1f}%', (x, y), ha='center', va='bottom')

# 显示图形
plt.show()

这样就可以在seaborn countplot的条形图顶部添加百分比标签了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券