首页/新闻资讯/正文详情

Matplotlib入门教程(四):绘图标记详解——marker 参数与样式定制

发布时间:2026/9/26 4:07:56 来源:云帆数科 栏目:资讯中心
Matplotlib入门教程(四):绘图标记详解——marker 参数与样式定制
一、什么是绘图标记绘图过程中如果我们想要给坐标自定义一些不一样的标记就可以使用plot()方法的marker参数来定义。标记的作用作用说明突出数据点让读者一眼看到数据位置区分多条曲线不同曲线用不同标记美化图表提升视觉效果与专业度基本用法pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([1, 3, 4, 5, 8, 9, 6, 1, 3, 4, 5, 2, 4]) plt.plot(ypoints, markero) # 实心圆标记 plt.show()二、marker 标记符号大全marker可以定义的符号如下标记符号描述.m00点,m01像素点om02实心圆vm03下三角^m04上三角m05左三角m06右三角1m07下三叉2m08上三叉3m09左三叉4m10右三叉8m11八角形sm12正方形pm13五边形Pm23加号填充*m14星号hm15六边形 1Hm16六边形 2m17加号xm18乘号 xXm24乘号 x填充Dm19菱形dm20瘦菱形|m21竖线_m22横线0(TICKLEFT)m25左横线1(TICKRIGHT)m26右横线2(TICKUP)m27上竖线3(TICKDOWN)m28下竖线4(CARETLEFT)m29左箭头5(CARETRIGHT)m30右箭头6(CARETUP)m31上箭头7(CARETDOWN)m32下箭头8(CARETLEFTBASE)m33左箭头中间点为基准9(CARETRIGHTBASE)m34右箭头中间点为基准10(CARETUPBASE)m35上箭头中间点为基准11(CARETDOWNBASE)m36下箭头中间点为基准None、 、—没有任何标记$...$m37渲染指定的字符如$f$以字母 f 为标记星号标记实例pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([1, 3, 4, 5, 8, 9, 6, 1, 3, 4, 5, 2, 4]) plt.plot(ypoints, marker*) plt.show()下箭头实例pythonimport matplotlib.pyplot as plt import matplotlib.markers plt.plot([1, 2, 3], markermatplotlib.markers.CARETDOWNBASE) plt.show()提示除了使用字符也可以直接使用matplotlib.markers模块中的常量可读性更好。三、fmt 参数格式字符串fmt参数定义了基本格式如标记、线条样式和颜色。语法pythonfmt [marker][line][color]示例o:r部分含义o实心圆标记:虚线r红色pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([6, 2, 13, 10]) plt.plot(ypoints, o:r) plt.show()注意fmt 中的三个部分顺序可以任意如ro:、r:o效果相同。1. 线类型线类型标记描述-实线:虚线--破折线-.点划线2. 颜色类型颜色标记描述r红色g绿色b蓝色c青色m品红y黄色k黑色w白色fmt 组合示例fmt效果o只画实心圆点o:r红色虚线上的实心圆点*-星号标记 实线s--g绿色破折线上的正方形标记D-.点划线 菱形标记四、标记大小与颜色我们可以自定义标记的大小与颜色使用的参数分别是参数简写作用markersizems定义标记的大小markerfacecolormfc定义标记内部的颜色markeredgecolormec定义标记边框的颜色1. 设置标记大小pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([6, 2, 13, 10]) plt.plot(ypoints, markero, ms20) plt.show()ms20让标记明显变大适合数据点较少的图表。2. 设置标记外边框颜色pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([6, 2, 13, 10]) plt.plot(ypoints, markero, ms20, mecr) plt.show()mecr让标记的边框变为红色。3. 设置标记内部颜色pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([6, 2, 13, 10]) plt.plot(ypoints, markero, ms20, mfcr) plt.show()mfcr让标记的内部填充为红色。4. 自定义内部与边框颜色pythonimport matplotlib.pyplot as plt import numpy as np ypoints np.array([6, 2, 13, 10]) plt.plot(ypoints, markero, ms20, mec#4CAF50, mfc#4CAF50) plt.show()使用十六进制颜色值可以精确控制颜色。参数组合效果对比配置效果markero默认大小的实心圆markero, ms20大号实心圆markero, ms20, mecr大号圆红色边框markero, ms20, mfcr大号圆红色填充markero, ms20, mec#4CAF50, mfc#4CAF50大号圆绿色边框填充五、实战组合应用pythonimport matplotlib.pyplot as plt import numpy as np # 数据 x np.array([1, 2, 3, 4, 5]) y1 np.array([2, 4, 6, 8, 10]) y2 np.array([1, 3, 5, 7, 9]) # 第一条线红色实心圆 虚线 plt.plot(x, y1, o:r, ms10, labelLine 1) # 第二条线蓝色正方形 实线 plt.plot(x, y2, s-b, ms8, mfcnone, labelLine 2) plt.legend() plt.show()技巧解析配置效果o:r红色虚线 实心圆s-b蓝色实线 正方形mfcnone标记内部透明空心效果空心标记技巧mfcnone让标记内部透明只显示边框适合多条曲线叠加时避免遮挡。六、标记选择建议场景推荐标记数据点少需突出显示o、s、D数据点多需简洁.、,区分多条曲线不同形状组合圆、方、三角强调趋势而非点不设标记只画线打印黑白图表用形状区分而非颜色七、标记绘制流程图八、常见问题排查问题现象可能原因解决方案标记不显示marker 拼写错误或为空检查 marker 参数值fmt 格式无效字符不在支持列表参考标记/线型/颜色表ms不生效参数名拼写错误确认是ms或markersizemfcnone报错应为字符串none加引号标记遮挡曲线标记过大调小ms或设mfcnone颜色不生效十六进制格式错误确认格式为#RRGGBB九、小结本篇你掌握了 Matplotlib 绘图标记的核心用法marker 参数30 种标记符号覆盖点、圆、方、三角、箭头等。fmt 格式字符串[marker][line][color]三要素自由组合。标记大小ms/markersize控制尺寸。标记颜色mfc控制填充mec控制边框。实用技巧mfcnone实现空心标记。标记是让图表会说话的细节之一。下一篇我们将学习Matplotlib 绘图线深入掌握线条样式、宽度、颜色等定制技巧。

相关推荐

Jev模型实战:TypeSafe AI与System One Model的API/SDK接入指南
Jev模型实战:TypeSafe AI与System One Model的API/SDK接入指南

1. 从刷屏到落地:Jev 模型到底是个什么东西最近技术圈被一个叫 Jev 的模型刷了屏,朋友圈、技术群、各种社区都在讨论。我第一时间拿到内测资格,连续折腾了三天,从 API 调用到 SDK 集成,从本地部署到实际业务场景测试&a… · 2026/9/26 4:07:50

C++ 顺序表与链表:原理、实现与对比
C++ 顺序表与链表:原理、实现与对比

1. 引言在 C 数据结构的学习中,顺序表(动态数组)和链表是最基础也最重要的两种线性表存储结构。它们都用于存储一组具有线性关系的数据元素,但在内存布局、插入删除效率、访问方式等方面存在显著差异。本文将从原理出发&#xff0… · 2026/9/26 4:07:44

大模型部署调优实战:延迟、吞吐与显存的铁三角平衡
大模型部署调优实战:延迟、吞吐与显存的铁三角平衡

1. 部署调优的底层逻辑:为什么延迟、吞吐、显存是铁三角搞开源模型部署的人,迟早都会撞上同一堵墙:模型跑起来了,但要么慢得没法用,要么并发一上来就崩,要么显存直接爆掉。这三个问题——延迟、吞吐、显存—… · 2026/9/26 4:07:38

商务洽谈总记不住客户需求?我用这套方案,告别“会后失忆症”
商务洽谈总记不住客户需求?我用这套方案,告别“会后失忆症”

做销售和商务的朋友应该都有过这种体验:一场客户面谈聊了两个小时,对方说了很多需求、顾虑、期望,当时觉得都记住了,可回到公司写跟进记录的时候,大脑却一片空白——客户到底强调了哪三点?那个预算范围是多… · 2026/9/26 5:26:00

SSE流式传输实战:从协议原理到生产环境避坑指南
SSE流式传输实战:从协议原理到生产环境避坑指南

1. 从一次线上事故说起:为什么流式传输值得单独拎出来讲去年帮一个团队排查线上问题,现象很典型:AI 对话页面在回答较长内容时,用户要盯着空白转圈十几秒,然后整段文字"啪"地一下全冒出来。产品经理觉得是模… · 2026/9/26 5:26:00

Steam游戏启动卡在正在启动?17步底层诊断与修复指南
Steam游戏启动卡在正在启动?17步底层诊断与修复指南

1. 项目概述:为什么“正在启动”成了Steam玩家最熟悉的等待界面 你点开《赛博朋克2077》,鼠标悬停在“播放”按钮上,指尖一按——屏幕右下角弹出小窗口:“正在启动”,进度条纹丝不动。你盯着它看了30秒、60秒、两分钟… · 2026/9/26 5:25:48

【行空板K10】从环境搭建到用华为云码道生成「中秋快乐」
【行空板K10】从环境搭建到用华为云码道生成「中秋快乐」

文章目录一、前言二、软件安装与工程配置2.1 安装 PlatformIO(以 VSCode 为例)2.2 新建工程并配置 platformio.ini2.3 跑通官方测试代码三、踩坑记录:中文路径/文件名导致的编译错误四、用华为云码道(CodeArts)生成「中秋快乐」彩色文字4.1 需… · 2026/9/26 5:25:48

SSM后端+微信小程序:社区垃圾回收管理系统全栈实战教程
SSM后端+微信小程序:社区垃圾回收管理系统全栈实战教程

简介:一套基于微信小程序的社区垃圾回收管理系统SSM后端毕业设计源码案例,面向计算机专业毕业生、课程设计学习者及微信小程序/后端开发爱好者。系统涵盖用户管理、垃圾回收请求提交、垃圾分类指导、任务分配、进度跟踪与数据统计等核心功能,… · 2026/9/26 5:25:48

SSM+微信小程序社区养老服务系统:环境搭建、业务走读与避坑指南
SSM+微信小程序社区养老服务系统:环境搭建、业务走读与避坑指南

简介:基于微信小程序与SSM后端的高分毕业设计完整源码包可用于毕业设计、课程设计及期末大作业,面向计算机专业毕业生和需要项目实战练习的学习者。项目以社区养老服务为业务场景,围绕护理预约、健康管理、日常生活照料、文化娱乐活动等模块展… · 2026/9/26 5:25:48

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码