matplotlib画一个成绩柱状图图

画一个柱状图:设置x轴刻度值,更改x轴刻度颜色,各柱状图label位置调节,柱状图上方数值显示

import matplotlib
import matplotlib.pyplot as plt
import numpy as np


def auto_label(rects):
    for rect in rects:
        height = rect.get_height()
        ax.annotate('{}'.format(height), # put the detail data
                    xy=(rect.get_x() + rect.get_width() / 2, height), # get the center location.
                    xytext=(0, 3),  # 3 points vertical offset
                    textcoords="offset points",
                    ha='center', va='bottom')


def auto_text(rects):
    for rect in rects:
        ax.text(rect.get_x(), 
                rect.get_height(),
                rect.get_height(), 
                ha='left', 
                va='bottom')


labels = ['G1', 'G2', 'G3', 'G4', 'G5']
men_data = [20, 34, 30, 35, 27]
women_data = [25, 32, 34, 20, 25]

index = np.arange(len(labels))
width = 0.2

fig, ax = plt.subplots()
rect1 = ax.bar(index - width / 2, men_data, color ='lightcoral', width=width, label ='Men')
rect2 = ax.bar(index + width / 2, women_data, color ='springgreen', width=width, label ='Women')

ax.set_title('Scores by gender')
ax.set_xticks(ticks=index)
ax.set_xticklabels(labels)
ax.set_ylabel('Scores')

ax.set_ylim(0, 50)
# auto_label(rect1)
# auto_label(rect2)
# auto_text(rect1)
# auto_text(rect2)

ax.legend(loc='upper right', frameon=False)
# fig.tight_layout()
# plt.savefig('2.tif', dpi=300)
# plt.show()

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

重生之我在异世界打工

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值