昌宁县住房和城乡建设网站做网站要注意些什么
2026/4/17 21:08:37 网站建设 项目流程
昌宁县住房和城乡建设网站,做网站要注意些什么,wordpress怎么删除文章,上海市企业服务云登录#x1f4c8; 实训揭秘#xff1a;用 Matplotlib 画出“会说话”的函数图#xff01; ❝ 你以为数学公式只会躺在课本里#xff1f; 不#xff01;它们也能在屏幕上“跳舞”——只要你会用 Matplotlib#xff01; 今天咱们来玩点“硬核”的#xff1a; 看懂一张图#… 实训揭秘用 Matplotlib 画出“会说话”的函数图❝你以为数学公式只会躺在课本里不它们也能在屏幕上“跳舞”——只要你会用 Matplotlib今天咱们来玩点“硬核”的看懂一张图写出一段代码把抽象的数学函数变成有注释、有箭头、有水印的精美图表这不仅是练习更是对 Matplotlib 核心功能的全面实战演练。别急着划走看完你也能画出“老板看了想收藏”的图 实训目标给定如下两个图像样式要求写出对应的绘图代码左图高频率正弦波 局部最大值标注右图标准正弦曲线 注释与水印我们不仅要复现图形更要理解每一行代码背后的“设计意图”。✅ 第一步导入库 设置字体import matplotlib.pyplot as plt import numpy as np plt.rcParams[font.sans-serif] [SimHei] # 使用黑体显示中文 plt.rcParams[axes.unicode_minus] False # 正常显示负号 %matplotlib inline❝ 小贴士如果你的图中出现“方框”或乱码大概率是字体没设置好。SimHei是 Windows 上常用的中文字体Mac 用户可以用PingFang SC或STHeiti。️ 第二步创建画布和子图fig plt.figure() ax1 fig.add_subplot(121) # 左边图1行2列第1个 ax2 fig.add_subplot(122) # 右边图1行2列第2个❝ 生活类比就像你在做 PPT一页放两个小图左边讲“快节奏”右边讲“慢工出细活”。 图一y sin(2πt) —— 高频振荡的“心跳”t np.arange(0.0, 5, 0.01) # 时间从0到5步长0.01 s np.sin(2 * np.pi * t) # 计算sin(2πt) ax1.plot(t, s, lw2) # 绘制曲线线宽为2 添加局部最大值标注bbox dict(boxstyleround, fcwhite) # 白色圆角框 plt.annotate(local max, xy(2.3, 1), # 箭头指向点 xytext(3, 1.5), # 文字位置 arrowpropsdict(facecolorblack, edgecolorred, headwidth7, width2), bboxbbox)❝✅ 解读xy箭头起点即曲线上某点xytext文本框位置arrowprops控制箭头样式黑色填充、红色边框、粗箭头bbox文本框样式白色背景、圆角 添加标题与坐标轴标签ax1.set_ylabel(Y, fontsize12) ax1.set_xlabel(X, fontsize12) ax1.set_ylim(-2, 2) # y轴范围✍️ 手写公式说明ax1.text(1, 1.2, max, fontsize18) ax1.text(1.2, -1.8, $ y sin(2 * np.pi * t) $, bboxbbox, rotation10, alpha0.8)❝ 注意$...$表示 LaTeX 数学公式rotation10让文字倾斜一点更自然alpha0.8透明度避免遮挡曲线 图二y sin(x) —— 平稳优雅的“呼吸”x np.linspace(0, 10, 200) # 0到10之间生成200个点 y np.sin(x) ax2.plot(x, y, linestyle-., colorpurple) # 虚点线紫色❝ 颜色建议purple很适合“神秘感”场景比如宇宙、哲学、深夜加班…… 添加关键点注释“Here I am”ax2.annotate(textHere I am, xy(4.8, np.sin(4.8)), # 指向最低点 xytext(3.7, -0.2), weightbold, colork, arrowpropsdict(arrowstyle-|, connectionstylearc3, colorred), bboxdict(boxstyleround, pad0.5, fcyellow, eck, lw1), alpha0.8)❝ 重点解析arrowstyle-|箭头是实线加竖线结尾像“靶心”connectionstylearc3弯曲路径更美观pad0.5增加文本框内边距fcyellow黄色背景突出显示⚙️ 设置坐标轴范围ax2.set_ylim(-1.5, 1.5) ax2.set_xlim(0, 10)❝️ 这样可以让图像比例协调不会“挤”或“空”。 最后一步美化与水印 添加网格线ax2.grid(ls:, colorgray, alpha0.5)❝✅ 点状虚线网格轻盈不抢戏提升可读性。 添加带方框的水印ax2.text(4.5, 1, NWNNU, fontsize15, alpha0.3, colorgray, bboxdict(fcwhite, boxstyleround, edgecolorgray, alpha0.3))❝ 水印技巧alpha0.3半透明不影响主体fcwhite白色背景防止文字被线条遮挡boxstyleround圆角边框柔和不刺眼 完整代码汇总直接复制可用import matplotlib.pyplot as plt import numpy as np plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False %matplotlib inline fig plt.figure() ax1 fig.add_subplot(121) t np.arange(0.0, 5, 0.01) s np.sin(2 * np.pi * t) ax1.plot(t, s, lw2) bbox dict(boxstyleround, fcwhite) plt.annotate(local max, xy(2.3, 1), xytext(3, 1.5), arrowpropsdict(facecolorblack, edgecolorred, headwidth7, width2), bboxbbox) ax1.set_ylabel(Y, fontsize12) ax1.set_xlabel(X, fontsize12) ax1.set_ylim(-2, 2) ax1.text(1, 1.2, max, fontsize18) ax1.text(1.2, -1.8, $ y sin(2 * np.pi * t) $, bboxbbox, rotation10, alpha0.8) ax2 fig.add_subplot(122) x np.linspace(0, 10, 200) y np.sin(x) ax2.plot(x, y, linestyle-., colorpurple) ax2.annotate(textHere I am, xy(4.8, np.sin(4.8)), xytext(3.7, -0.2), weightbold, colork, arrowpropsdict(arrowstyle-|, connectionstylearc3, colorred), bboxdict(boxstyleround, pad0.5, fcyellow, eck, lw1), alpha0.8) ax2.set_ylim(-1.5, 1.5) ax2.set_xlim(0, 10) bbox dict(boxstyleround, ecred, fcwhite) ax2.text(6, -1.9, $ y sin(x) $, bboxdict(boxstylesquare, facecolorwhite, ecblack)) ax2.grid(ls:, colorgray, alpha0.5) ax2.text(4.5, 1, NWNNU, fontsize15, alpha0.3, colorgray, bboxdict(fcwhite, boxstyleround, edgecolorgray, alpha0.3)) plt.show() 学到了什么功能关键词多图并排add_subplot(121)/122标注文字annotate()箭头样式arrowprops,arrowstyle文本框bbox,boxstyle公式渲染$...$中文支持SimHei,unicode_minusFalse水印text() 半透明 边框 结语你的数据也可以这么“会说话”从一条简单的正弦曲线到充满细节的标注与水印Matplotlib 的强大之处正在于——它不只是画图更是讲故事。下次当你看到一个“看不懂但很酷”的图表时不妨想想“这个图背后是不是也藏着一行行精心设计的代码”关注我们下期带你用 Seaborn 一键生成“论文级”图表❝ 如果你觉得这篇实训解析对你有帮助欢迎点赞转发让更多同学少走弯路

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询