matplotlib之pyplot模块——显示/关闭子图边框(轴脊)(box())

Python数据可视化(坐标轴的定制与3D绘图) 1 隐藏轴脊 import numpy as np import matplotlib.pyplot as plt import matplotlib.patches as mpathes polygon = mpathes.RegularPolygon((0.5, 0.5), 6, 0.2, color=‘g’) ax = plt.axes((0.3, 0.3, 0.5, 0.5)) ax.add_patch(polygon) #隐藏全部轴脊 ax.axis(‘off’) plt.show() 2 隐藏 阅读详情
AI摘要

本文介绍Matplotlib中box()函数的使用方法,该函数用于控制图表边框的显示与隐藏。文章详细解释了box()函数的工作原理,并展示了如何通过Spine对象更精细地控制每个轴脊的状态。

当前有效matplotlib版本为:3.4.2。

box()函数概述

box()函数的功能为关闭或显示当前子图的所有边框。边框也被称为box、frame或spines,它由上下左右四条轴脊(spine)构成。

box()函数的签名为matplotlib.pyplot.box(on=None)。

其中on参数的取值为布尔值或None,当取值为True当前子图显示边框,取值为False当前子图关闭边框,取值为None时切换显示、关闭状态。

box()函数原理

根据box()函数源码可知,其工作原理与matplotlib.axes.Axes.set_frame_on()相关,根据Axes对象源码观察可知,关闭的边框与Axes.spines对象有关。

matplotlib.pyplot.box()源码:

def box(on=None):
    ax = gca()
    if on is None:
        on = not ax.get_frame_on()
    ax.set_frame_on(on)

matplotlib.axes.Axes.set_frame_on()源码:

def get_frame_on(self):
    return self._frameon

def set_frame_on(self, b):
    self._frameon = b
    self.stale = True

matplotlib.axes.Axes相关源码:

if not (self.axison and self._frameon):
    for spine in self.spines.values():
        artists.remove(spine)
        
if self.axison and self._frameon:
    self.patch.draw(renderer)

Axes.spines对象

matplotlib.spines.Spine类定义了轴脊。matplotlib.spines.Spines类则是子图中所有matplotlib.spines.Spine对象的容器。

在子图中Axes.spines即matplotlib.spines.Spines类的实例。

Axes.spines提供了类似字典或pandas.DataFrame的接口来访问Spine对象,每个Spine对象可独立控制轴脊的行为,通过Spine对象的set_visible(False)和set_color('none')方法可关闭轴脊。

根据Axes.spines.keys()可知,对应的4个轴脊的键为['left', 'right', 'bottom', 'top']。

Axes.spines访问Spine对象的接口示例如下:

spines['top'].set_visible(False)
spines.top.set_visible(False)
spines[['top', 'right']].set_visible(False)
spines[:].set_visible(False)

案例:演示关闭子图边框

在这里插入图片描述

import matplotlib.pyplot as plt

# 默认子图边框样式
plt.subplot(231)
# 关闭当前子图边框
plt.subplot(232)
plt.box()
# 利用ax.set_frame_on关闭边框
plt.subplot(233)
ax = plt.gca()
ax.set_frame_on(False)
# 演示利用spine对象关闭轴脊
plt.subplot(234)
ax = plt.gca()
ax.spines.right.set_color('none')
ax.spines['top'].set_visible(False)
# 利用spines对象索引spine对象的方法
plt.subplot(235)
ax = plt.gca()
ax.spines[['top','left','right']].set_visible(False)
# 去掉y轴刻度
plt.yticks([])
# 利用spines对象索引spine对象的方法
plt.subplot(236)
ax = plt.gca()
ax.spines[:].set_visible(False)

plt.show()
python之Matplotlib.pyplot 最近将windows系统删除了,没有matlab,所以考虑使用python在mac os直接实现数据处理及画图功能。主要使用numpy和matplotlib来实现matlab的功能,numpy可以进行矩阵的处理,而matplotlib.pyplot用来实现图形化功能。 matplotlib参考文档地址 http://matplotlib.org/ 安装方式: python3 阅读详情

相关推荐

matplotlib绘图实例:pyplot、pylab模块及作图参

Matplotlib.pyplot绘图实例{使用pyplot模块}matplotlib绘制直线、条形/矩形区域import numpy as np import matplotlib.pyplot as plt t = np.arange(-1, 2, .01) s = np.sin(2 * np.pi * t) plt.plot(t,s) # draw a thick red hline at...

王冠hurt的博客 1494

matplotlib隐藏边框的方法

matplotlib隐藏边框的方法。

pengch987的专栏 2428

Python:Matplotlib库的使用

为了正确显示中文字体,请用以下代码更改默认设置,其中’SimHei’表示黑体字。常见字体名称的中英文对照字体英文表示字体名称SimSun宋体SimHei黑体KaiTi楷体微软雅黑LiSu隶书FangSong仿宋YouYuan幼圆STSong华文宋体STHeiti华文黑体苹果丽中黑matplotlib库由一系列有组织有隶属关系的对象构成,这对于基础绘图操作来说显得过于复杂。因此,matplotib提供了一套快捷命令式的绘图接口函数,即pyplot子模块。

衍生星球的博客 1万+

python画图 matplotlib去掉边框

去掉上面和右边的边框,只需要在plot前加上这三行代码: from matplotlib import pyplot as plt fig, ax = plt.subplots() ax.spines['right'].set_visible(False) ax.spines['top'].set_visible(False) plt.scatter(...) 参考:plot - 在matplotlib中,如何只显示左边框和下框边框? ...

Caiqiudan的博客 5万+

CAN信号定义避坑指南:Kvaser Database Editor里Byteorder和Bitpos设置的那些‘坑’

本文详细解析了在Kvaser Database Editor中配置CAN信号时,字节序(Byteorder)和起始位(Bitpos)设置的常见错误及解决方案。通过实际案例和验证技巧,帮助工程师避免DBC文件配置中的陷阱,确保车载电子系统的稳定通信。

weixin_28678831的博客 360

SAP License USMM SLAW2 SAP审计

引言 企业每年都会收到SAP License审计邮件,邮件内容大致就是根据贵公司与SAP签定的合同XXX条款规定,贵公司所安装的SAP系统需要进行测定。 关键字: SAP License、 SAP USMM、 SLAW2、 SAP 账号、SAP 账号审计、 SAP License 审计、 SAP 审计报告、SAP 账号优化 SAP License审计邮件 企业每年都会收到SAP License审计邮件,邮件内容大致就是根据贵公司与SAP签定的合同XXX条款规定,贵公司所安...

感悟人生 2981

python画图去掉边框

ax=plt.subplot(2,3,1) ... ax.spines['top'].set_visible(False) ax.spines['right'].set_visible(False) ax.spines['bottom'].set_visible(False) ax.spines['left'].set_visible(False)

Mr.horse的博客 1万+

Win10/Win11共享打印机0x00000709终极修复指南:从注册表到LPD协议的全面解决方案

本文提供了Win10/Win11共享打印机0x00000709错误的终极修复指南,涵盖从注册表修改到LPD协议的全面解决方案。通过详细分析错误根源、基础修复四步法、高阶LPD协议方案及企业级深度修复策略,帮助用户彻底解决打印机共享问题,提升局域网打印效率。

weixin_33724046的博客 312

matplotlib画图去除tick(刻度)和spine(图的边框)

import matplotlib.pyplot as plt import numpy as np colors = [ 'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w' ] fig, axs = plt.subplots(2,4) for ax,c in zip(axs.flat,colors): ax.plot([1,2,3],[4,5,6],color=c) # for ax in axs.flat: # ax.set_axis_off()

雨化于画 2475

​​瑞芯微RK系列 vs 全志系列芯片:终极选型指南(2025版)​

​。

jinxi996611的博客 1万+

3 种 VLA 模型动作表示方案对比:RT-2 离散化 vs π0 流匹配 vs HybridVLA 混合架构

本文深入对比了三种VLA模型动作表示方案:RT-2离散化、π0流匹配和HybridVLA混合架构。分析了各自的技术原理、优势与局限性,并提供了应用场景选择指南,帮助研究者在具身智能领域做出更优的技术选型决策。

weixin_29031161的博客 319

【matplotlib绘图】matplotlib.pyplot与axes的关系

最近在学习数据可视化,梳理一下其中一些诸如pandas绘图、matplotlib绘图、pyplot(plt)、axes等概念。 重要的事情说三遍:axes不是axis!axes不是axis!axes不是axis! 重要的事情说三遍:pyplot是接口不是对象!pyplot是接口不是对象!pyplot是接口不是对象!

Room221技术笔记 8696

MiniMax H3本地部署实战:ComfyUI整合包安装与提速插件验证指南

在AIGC工具链快速演进的当下,本地部署内容生成模型成为许多创作者和开发者的关注焦点。本地部署意味着数据不出本机、可按需定制工作流,还能规避云端排队与外部依赖,其核心价值在于为内容生产提供可控、私密且可编程的生成环境。ComfyUI作为模块化节点式AI绘画工具,凭借灵活的工作流编排和API接口能力,成为承载这类模型的热门平台。MiniMax H3作为支持文本、参考图等多种输入的内容生成模型,与ComfyUI结合后,既适合个人进行概念验证,也能用于团队私有化流程搭建。实际落地过程中,中文整合包显著降低了环境配

weixin_29042035的博客 296

matplotlib.pyplot 所有方法目录

matplotlib.pyplot 所有方法目录 关于pyplot, 基本20%的函数就完成80%的应用了 , 本文翻译了官方文档的pyplot1方法表格。看看pyplot还能做哪些事,大概了解还有哪些功能 。

二郎银的博客 4050

CloudCompare 二次开发(41)——点云重建三维凸包并计算体积

本文介绍了如何结合PCL与CloudCompare实现点云三维凸包的构建与可视化。通过代码集成,在CloudCompare界面添加功能按钮,实现点云数据转换、凸包构建、体积计算以及可视化显示。具体步骤包括:1) 在UI中添加功能按钮;2) 将点云数据转换为PCL格式;3) 使用PCL的ConvexHull算法构建三维凸包;4) 计算并显示凸包体积;5) 将结果以点云和网格形式可视化显示。最终实现了点云凸包的自动构建与体积计算功能,为点云处理提供了实用工具。

点云侠的博客 193

DSP2837X CLA开发实战教程

摘要: 本文详细解析TI C2000 DSP中CLA协处理器的开发流程,以TMS320F28377D的cla_divide案例为例,展示浮点除法验证的实现方法。从基础配置(消息RAM管理、任务触发)到高级调试(ePWM计时、断点设置),涵盖全流程开发要点。重点分析CLA编程约束(禁用标准库、数学优化)、多任务调度及常见问题解决方案(如死锁、数据同步)。提供FPGA协同加速、电机控制等扩展方向,并推荐官方例程与硬件平台(如创龙TL2837xF-EVM)。开发时需注意.cla文件语法支持及调试技巧,以充分发挥C

6760

matplotlib之pyplot教程

文章目录1. pyplot介绍2. 使用关键字字符串绘图3. 使用分类变量绘图4. 线条属性控制5. 使用多个图形和坐标轴6. 图中添加文本使用数学表达式使用注释文本7. 对数轴和其他非线性轴8. 总结9. 参考文献 对matplotlib包中的pyplot模块的介绍。主要是对matplotlib官方文档的转译。 1. pyplot介绍 matplotlib.pyplot是使matplotlib像...

besmarterbestronger的博客 1353

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Matplotlib 中文用户指南 3.1 pyplot 教程

3.1 pyplot 教程 原文:Pyplot tutorial 译者:飞龙 协议:CC BY-NC-SA 4.0 matplotlib.pyplot是一个命令风格函数的集合,使matplotlib的机制更像 MATLAB。 每个绘图函数对图像进行一些更改:例如,创建图像,在图像中创建绘图区域,在绘图区域绘制一些线条,使用标签装饰绘图等。在matplotlib.pyplot中

龙哥盟 8万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

matplotlib之pyplot模块——获取/设置对象属性值(setp()、getp/get())

当前有效matplotlib版本为:3.4.1。 概述 pyplot模块提供了获取/设置对象属性值的接口。功能类似于Python内置函数getattr和setattr。从源码上来看,get()是getp()的别名,两者是等价的。setp()、getp()的底层实现是基于Python内置函数getattr和setattr。 getp()函数:获取对象属性 getp()函数的签名为matplotlib.pyplot.getp(obj, *args, **kwargs)。 常用参数为: obj :需要查询属性的

mighty13的专栏 3万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

matplotlib.pyplot库解析

plt的绘图区域函数: 1)plt.figure(figsize=None,g=facecolor=None) 创建一个全局绘图区域 import matplotlib.pyplot as plt plt.figure(figsize=(8,4)) plt.show() 2)plt.axes(rect,axisbg=’w’)创建一个坐标系风格的子绘图区域。默认创建一个subplot...

zhenaoxi1077的博客 6537

python用matplotlib画雷达图_matplotlib的基本使用、绘制雷达图及绘制数学函数

一、matplotlib的介绍1、matplotlib是提供数据绘图功能的第三方库,其pyplot子库主要用于实现各种数据展示图形的绘制。2、pyplot子库的引用方式如下:import matplotlib.pyplot as plt3、为了正确显示中文字体,请用一下代码更改默认设置,其中“SimHei”表示黑体字>>>import matplotlib>>>matplotlib.rcParam...

weixin_39686353的博客 1176

matplotlib.pyplot.axis()与matplotlib.pyplot.axes()结构及用法

matplotlib.pyplot.axis() 官方文档 matplotlib.pyplot.axis(*v, **kwargs) 获得或设定axis内容的便利方法。 常用参数: xmin, ymin, xmax, ymax : float, optional The axis limits to be set. Either none or all of the limits mus...

漫步量化 9011

matplotlib.pyplot.xlim()、ylim()、axis()结构及用法||参数详解

matplotlib.pyplot.xlim() 官方文档 matplotlib.pyplot.xlim(*args, **kwargs) 获取或者是设定x座标轴的范围,当前axes上的座标轴。 有两种参数输入方式 plt.xlim(num1, num2) plt.xlim(xmin=num1,xmax=num2) matplotlib.pyplot.ylim...

漫步量化 9万+

python pyplot 宽高等比_python – 更改matplotlib中子图的宽高比

简答你可能想打电话:ax.imshow(..., aspect='auto')默认情况下,imshow会在调用轴时将轴的纵横比设置为1.这将覆盖您在创建轴时指定的任何方面.但是,这是matplotlib中常见的混淆源.让我备份并详细解释正在发生的事情.Matplotlib的布局模型matplotlib中的aspect是指数据坐标中xscale和yscale的比率.它不直接控制轴的宽度和高度的比率....

weixin_39812142的博客 3188

Matplotlib精品学习笔记002-Pyplot详解,快速绘图

matplotlib.pyplot集合了一系列功能,运行起来和MATLAB相似。

whitedrogen的博客 2567

Matplotlib子图实战:从基础布局到复杂仪表板构建

在数据可视化领域,多图对比与信息整合是呈现复杂分析结果的核心需求。Matplotlib作为Python生态中最基础且强大的绘图库,其子图(Subplot)功能通过在一个画布上规划多个坐标轴区域,解决了多图表布局、样式统一与协同联动的工程难题。从基础的`plt.subplots`网格布局,到利用`GridSpec`实现跨行跨列的复杂排版,再到共享坐标轴与创建双Y轴以实现多维度数据对比,子图系统为构建信息密度高的综合可视化看板提供了底层支持。这些技术尤其适用于数据分析报告、学术研究图表以及**商业仪表板(Das

weixin_33863087的博客 373
上一篇: matplotlib之pyplot模块——图形的显示、关闭、重绘(show()、close()、draw())
下一篇: matplotlib之pyplot模块——添加次坐标轴(第二坐标轴)(twinx())
mighty13
博客等级 码龄23年 728粉丝 438原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值