【matplotlib】可视化解决方案——如何向画布中添加坐标轴

概述

有些时候我们可能需要在画布中添加坐标轴,这种做法非常类似于在画布中设置子区,但是设置子区这种方式不能再画布中的任意位置进行,添加坐标轴却可以在画布中进行任意结构的多图视图布局。通过向画布中添加坐标轴,我们可以实现在一个画布中嵌套多个坐标轴的视图布局。例如,如果需要展示相同数据的不同展现形式或者相同实例的不同属性,就需要通过坐标轴生成的多个视图来表达,从而将所有的图形放到一张图中。

为了实现添加坐标轴的功能,我们需要借助 pyplot.axes API 进行设置,该方法将一个 Axes 对象添加到当前窗口并使之称为当前 Axes,其定义如下:

def matplotlib.pyplot.axes(arg=None, **kwargs):
	...

参数如下:

  • Arg:4 元元祖 [left, bottom, width, height],表示添加的 Axes 对象的图形属性,前两个参数代表坐标轴左侧边缘和底侧边缘距画布边缘的距离,后两个参数代表 Axes 对象的宽度和高度;
  • Projection:指定 Axes 对象的投影类型;
  • Polar:如果设置为 True,则相当于projection='polar'
  • Sharex:指定是否共享 X 轴;
  • Sharey:执行是否共享 Y 轴;
  • Label:Axes 对象的标签;
  • Kwargs:其他 Axes 关键字参数;
  • Return:Axes 或者 Axes 子类的实例;

示例

完整代码如下:

import matplotlib.pyplot as plt  
import numpy as np  
  
plt.axes([.1, .7, .3, .3], frameon=True, aspect='equal')  
plt.plot(np.arange(3), [0, 1, 0], color='blue', lw=2, ls='--')  
  
plt.axes([.35, .4, .3, .3], frameon=True, aspect='equal')  
plt.plot(np.arange(3), [0, 1, 0], color='blue', lw=2, ls='-')  
  
plt.axes([.65, .1, .3, .3], frameon=True, aspect='equal')  
plt.plot(np.arange(3), [0, 1, 0], color='blue', lw=2, ls=':')  
  
plt.show()

画图结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KqZEKvHp-1679302030996)(【matplotlib】可视化解决方案——如何向画布中添加坐标轴_image_1.png)]

往期回顾

  1. 【matplotlib】可视化解决方案——如何正确使用matplotlib颜色系统
  2. 【matplotlib】可视化解决方案——如何实现画布局部放大功能
  3. 【matplotlib】可视化解决方案——如何更改matplotlib配置信息
  4. 【matplotlib】可视化解决方案——如何定制化网格
  5. 【matplotlib】可视化解决方案——如何向画布添加交叉直线
  6. 【matplotlib】可视化解决方案——如何解决matplotlib中文乱码问题
  7. 【matplotlib】可视化解决方案——如何设置matplotlib风格集
  8. 【matplotlib】可视化解决方案——如何设置轴标签的透明度和大小
  9. 【matplotlib】可视化解决方案——如何向图表中添加数据表
  10. 【matplotlib】可视化解决方案——如何更改绘图区域背景颜色

文中难免会出现一些描述不当之处(尽管我已反复检查多次),欢迎在留言区指正,相关的知识点也可进行分享,希望大家都能有所收获!!如果觉得我的文章写得还行,不妨支持一下。你的每一个转发、关注、点赞、评论都是对我最大的支持!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猪猪家的大猪猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值