← 返回 Day 81 正文

Day 81 · 练习与清单

Day 081 — Matplotlib 与 Plotly 可视化

✅ 今日完成清单


📝 基础练习题

练习 1:多图表绘制

用 Matplotlib 生成以下数据的可视化:

python
x = range(1, 11)
y1 = [i**2 for i in x]      # 平方
y2 = [i**3 for i in x]      # 立方

要求: - 用一条代码同时绘制两条曲线 - 添加图例、标题、坐标轴标签 - 设置网格线 - 保存为 exercise_1.png

练习 2:柱状图美化

创建一个柱状图,展示5个学生的成绩:

python
students = ['Alice', 'Bob', 'Charlie', 'Diana', 'Eve']
scores = [85, 92, 78, 95, 88]

要求: - 每个柱子用不同颜色 - 在柱子上方显示具体分数 - 成绩低于80的用红色高亮 - 设置合理的 y 轴范围

练习 3:子图布局

用 plt.subplots(2, 2) 创建 2×2 子图: - 左上:绘制 sin(x) 曲线 - 右上:绘制 cos(x) 曲线 - 左下:绘制 tan(x) 曲线(注意截断 y 轴范围) - 右下:绘制 x^2 抛物线


🚀 进阶挑战题

挑战 1:动态仪表盘

使用 FuncAnimation 创建一个实时更新的折线图,模拟实时数据流。

挑战 2:Plotly 交互图表

用 Plotly 创建一个散点图,要求: - 支持鼠标悬停显示详情 - 支持图例点击过滤 - 添加下拉菜单切换不同的数据视图

挑战 3:自定义样式库

创建一个 .mplstyle 样式文件,包含: - 自定义颜色循环 - 统一的字体大小 - 关闭顶部和右侧边框 - 设置网格线样式