带有居中标签的堆叠条形图:使用 bar_label 的改进解决方案
在 matplotlib 中,一种精确地将堆叠中的数据标签居中的改进方法使用 bar_label 函数可以使用条形图。操作方法如下:
import pandas as pd import matplotlib.pyplot as plt
# sample DataFrame df = pd.DataFrame({'A': [45, 17, 47], 'B': [91, 70, 72], 'C': [68, 43, 13]})
ax = df.plot(kind='bar', stacked=True, figsize=(8, 6), rot=0, xlabel='Class', ylabel='Count')
for c in ax.containers: ax.bar_label(c, label_type='center')
可选自定义
labels = [v.get_height() if v.get_height() > 0 else '' for v in c] # for segments with small or zero values
ax.bar_label(c, fmt=lambda x: f'{x:.0f}' if x > 0 else '', label_type='center') # to show no decimal places
Seaborn替代方案
如果您更喜欢使用seaborn,您还可以创建堆叠条形图并为条形图添加标签。
以上是如何在 Matplotlib 堆积条形图中将数据标签居中?的详细内容。更多信息请关注PHP中文网其他相关文章!