编程兴趣班第二课:用Jupyter Notebook制作数学折线图
【摘要】 课程目标学习启动Jupyter Notebook理解Python基础变量和列表使用Matplotlib绘制简单折线图巩固Linux基本命令 课前准备首先让我们打开终端,复习几个Linux命令:# 1. 导航到你的工作目录(比如我之前创建的learn_python文件夹)cd ~/learn_python# 2. 启动Jupyter Notebookjupyter notebook解释这些命...
课程目标
- 学习启动Jupyter Notebook
- 理解Python基础变量和列表
- 使用Matplotlib绘制简单折线图
- 巩固Linux基本命令
课前准备
首先让我们打开终端,复习几个Linux命令:
# 1. 导航到你的工作目录(比如我之前创建的learn_python文件夹)
cd ~/learn_python
# 2. 启动Jupyter Notebook
jupyter notebook
解释这些命令:
cd
= change directory(改变目录)~
= 代表用户主目录的快捷方式jupyter notebook
= 启动Jupyter Notebook服务
课程内容
第一部分:创建新Notebook
- 在浏览器打开的Jupyter界面点击"New" > “Python 3”
- 重命名Notebook为"math_line_plot"(点击顶部标题处)
第二部分:Python基础 - 变量和列表
在第一个单元格中输入以下代码并运行(Shift+Enter):
# 定义变量 - 存储数据的容器
x_values = [1, 2, 3, 4, 5] # x轴数值
y_values = [1, 4, 9, 16, 25] # y轴数值(x的平方)
# 打印变量查看内容
print("x值:", x_values)
print("y值:", y_values)
概念解释:
变量
:存储数据的命名容器(如x_values)列表
:用方括号[]
表示的有序数据集合#
:注释符号,后面的文字不会被Python执行
第三部分:绘制折线图
在新单元格中输入并运行:
# 导入绘图库 - 这是Python扩展功能的方式
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['AR PL UKai CN'] # 中文字体
plt.rcParams['axes.unicode_minus'] = False
# 创建折线图
plt.plot(x_values, y_values, marker='o') # marker='o'表示在每个数据点画圆圈
# 添加图表标题和坐标轴标签
plt.title("数字的平方关系") # 图表标题
plt.xlabel("数字") # x轴标签
plt.ylabel("平方值") # y轴标签
# 显示图表
plt.show()
概念解释:
import
:导入Python库(工具箱)plt.plot()
:绘制折线图的函数plt.title()
/plt.xlabel()
/plt.ylabel()
:图表装饰函数
如果出现中文无法正常显示,可以查询字体后配置
# 获取所有字体
fonts = fm.fontManager.ttflist
# 筛选中文字体(包含CJK或常见中文字体名称)
chinese_fonts = [f.name for f in fonts if any(keyword in f.name.lower() for keyword in ['cjk', 'chinese', 'hei', 'yuan', 'kai', 'song', 'ming'])]
print("可用的中文字体:", sorted(set(chinese_fonts)))
#输出如:可用的中文字体: ['AR PL UKai CN', 'AR PL UMing CN', 'Noto Sans CJK JP', 'Noto Serif CJK JP']
第四部分:自定义图表
让我们修改数据,制作一个更有趣的图表:
# 新数据:0到10的数字及其立方
x = list(range(11)) # 0到10的数字
y = [num**3 for num in x] # 每个数字的立方
# 绘制带样式的图表
plt.plot(x, y,
color='red', # 线条颜色
linestyle='--', # 虚线样式
marker='s', # 方形标记
markersize=8) # 标记大小
# 添加网格和调整坐标轴
plt.grid(True)
plt.xlim(0, 10)
plt.ylim(0, 1000)
plt.title("数字的立方关系")
plt.xlabel("数字")
plt.ylabel("立方值")
plt.show()
新概念:
range(11)
:生成0到10的数字序列- 列表推导式
[num**3 for num in x]
:高效创建列表的方法 - 图表样式参数:color, linestyle, marker等
课后练习
- 尝试修改数据,绘制1-10的数字及其两倍值的折线图
- 改变图表颜色为绿色,标记为三角形(参数为’^’)
- 添加
plt.savefig('my_plot.png')
在show()前,保存图表到文件
课程总结
今天你学会了:
- 使用Jupyter Notebook的基本流程
- Python变量和列表的基本概念
- 用matplotlib绘制和定制折线图
- 几个实用的Linux命令
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)