import matplotlib.pyplot as plt

# 设置中文显示，防止中文乱码
plt.rcParams["font.family"] = ["SimHei", "WenQuanYi Micro Hei", "Heiti TC"]
plt.rcParams["axes.unicode_minus"] = False  # 负号正常显示

# ---------------------- 你的成绩数据 ----------------------
exam_names = ["第1次", "第2次", "第3次", "第4次", "第5次", "第6次"]  # 考试名称
scores = [72, 78, 65, 83, 88, 91]  # 对应成绩

# 创建画布
plt.figure(figsize=(10, 6), dpi=100)

# 绘制折线图，加圆点标记
plt.plot(exam_names, scores, color="#2E86AB", marker="o", linewidth=2.5, markersize=8, label="考试成绩")

# 在每个点上标注分数
for x, y in zip(exam_names, scores):
    plt.text(x, y + 1.2, str(y), ha="center", fontsize=11)

# 图表美化设置
plt.title("个人考试成绩走势图", fontsize=16, pad=20)
plt.xlabel("考试次数", fontsize=12)
plt.ylabel("分数", fontsize=12)
plt.ylim(50, 100)  # Y轴分数范围，可以自己改
plt.grid(True, alpha=0.35)  # 网格线
plt.legend()

plt.tight_layout()
plt.show()
