(一)设置坐标轴的位置和展示形式

(1)向画布中任意位置添加任意数量的坐标轴

'''
通过在画布的任意位置和区域,讲解设置坐标轴的位置和坐标轴的展示形式的实现方法,
与subplot,subplots不同,axes可以完成子区的交错,覆盖和重叠等视图组合
ax(rect, frameon, facecolor)的参数的含义
rect=[left, bottom, width, height]
left------------>左侧边缘距离画布边缘的距离
bottom---------->距离底部画布边缘的距离
width----------->坐标轴的宽度
height---------->坐标轴的高度
left和height--------->画布宽度的归一化距离
bottom和width-------->画布高度的归一化距离
frameon------------>True,绘制坐标轴的四条轴脊
facecolor---------->坐标轴背景的颜色
'''
import matplotlib.pyplot as plt
import numpy as np plt.axes([0.05, 0.7, 0.3, 0.3], frameon=True, facecolor="y", aspect="equal")
plt.plot(np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle="--") plt.axes([0.3, .4, .3, .3], frameon=True, facecolor="y", aspect="equal")
plt.plot(2+np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle="-") plt.axes([0.55, .1, .3, .3], frameon=True, facecolor="y", aspect="equal")
plt.plot(4+np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle=":") plt.show()

(2)函数axis()--------调整已经确定的坐标轴的显示,隐藏和刻度范围

'''
通过在画布的任意位置和区域,讲解设置坐标轴的位置和坐标轴的展示形式的实现方法,
与subplot,subplots不同,axes可以完成子区的交错,覆盖和重叠等视图组合
ax(rect, frameon, facecolor)的参数的含义
rect=[left, bottom, width, height]
left------------>左侧边缘距离画布边缘的距离
bottom---------->距离底部画布边缘的距离
width----------->坐标轴的宽度
height---------->坐标轴的高度
left和height--------->画布宽度的归一化距离
bottom和width-------->画布高度的归一化距离
frameon------------>True,绘制坐标轴的四条轴脊
facecolor---------->坐标轴背景的颜色
'''
import matplotlib.pyplot as plt
import numpy as np plt.axes([0.05, 0.7, 0.3, 0.3], frameon=True, facecolor="y", aspect="equal")
plt.plot(np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle="--")
plt.ylim(0, 1.5)
plt.axis("image") plt.axes([0.3, .4, .3, .3], frameon=True, facecolor="y", aspect="equal")
plt.plot(2+np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle="-")
plt.ylim(0, 15)
plt.axis([2.1, 3.9, 0.5, 1.9])
#axis([xmin, xmax, ymin, ymax])
plt.axes([0.55, .1, .3, .3], frameon=True, facecolor="y", aspect="equal")
plt.plot(4+np.arange(3), [0, 1, 0], color="blue", linewidth=2, linestyle=":")
plt.ylim(0, 1.5)
plt.axis("off")
#坐标轴的关闭
plt.show()

(3)控制坐标轴刻度的显示(一)

import matplotlib.pyplot as plt
import numpy as np
'''
控制坐标轴刻度的显示的两种方法:
一是调用matplotlib的面向对象的API的Axes.set_xticks()和
Axes.yticks()实例方法,另一种是调用模块pyplot的API,使用函数
setp()设置刻度元素
'''
ax1 = plt.subplot(121)
ax1.set_xticks(range(0, 251, 50))
plt.grid(True, axis="x") ax2 = plt.subplot(122)
ax2.set_xticks([])
plt.grid(True, axis="x") plt.show()

(4)调用函数setp()--------实现刻度值的显示

import matplotlib.pyplot as plt
import numpy as np
'''
控制坐标轴刻度的显示的两种方法:
一是调用matplotlib的面向对象的API的Axes.set_xticks()和
Axes.yticks()实例方法,另一种是调用模块pyplot的API,使用函数
setp()设置刻度元素
'''
ax1 = plt.subplot(221)
plt.setp(ax1.get_xticklabels(), visible=True)
plt.setp(ax1.get_xticklines(), visible=True)
plt.grid(True, axis="x") ax2 = plt.subplot(222)
plt.setp(ax2.get_xticklabels(), visible=True)
plt.setp(ax2.get_xticklines(), visible=False)
plt.grid(True, axis="x")
#刻度线的隐藏
ax3 = plt.subplot(223)
plt.setp(ax3.get_xticklabels(), visible=False)
plt.setp(ax3.get_xticklines(), visible=True)
plt.grid(True, axis="x")
#刻度标签的隐藏
ax4 = plt.subplot(224)
plt.setp(ax4.get_xticklabels(), visible=False)
plt.setp(ax4.get_xticklines(), visible=False)
plt.grid(True, axis="x")
#双隐藏
plt.show()

(5)棉棒图的定制化展示

import matplotlib.pyplot as plt
import numpy as np x = np.linspace(0.5, 2*np.pi, 20)
y = np.random.randn(20) markerline, stemlines, baseline = plt.stem(x, y)
#获得实例,前两个实例的属性值的改变用setp
plt.setp(markerline, color="chartreuse", marker="D")
plt.setp(stemlines, linestyle="-.")
#stemlines是实例列表
baseline.set_linewidth(2)
#基线的位置和线型 plt.show()

(8)控制坐标轴的显示

import matplotlib.pyplot as plt
import numpy as np
'''
spines实现轴的显示
set_ticks_position实现标签的显示
'''
x = np.linspace(-2*np.pi, 2*np.pi, 1000)
y = np.sin(x) ax1 = plt.subplot(221)
ax1.spines["right"].set_color("none")
ax1.spines["top"].set_color("none")
ax1.set_xlim(-2*np.pi, 2*np.pi)
ax1.set_ylim(-1.0, 1.0)
plt.title(r"$a$")
plt.scatter(x, y, marker="+", color="b") ax2 = plt.subplot(222)
ax2.spines["right"].set_color("none")
ax2.spines["top"].set_color("none")
ax2.xaxis.set_ticks_position("bottom")
ax2.set_xlim(-2*np.pi, 2*np.pi)
ax2.set_ylim(-1.0, 1.0)
plt.title(r"$b$")
plt.scatter(x, y, marker="+", color="b") ax3 = plt.subplot(223)
ax3.spines["right"].set_color("none")
ax3.spines["top"].set_color("none")
ax3.yaxis.set_ticks_position("left")
ax3.set_xlim(-2*np.pi, 2*np.pi)
ax3.set_ylim(-1.0, 1.0)
plt.title(r"$c$")
plt.scatter(x, y, marker="+", color="b") ax4 = plt.subplot(224)
ax4.spines["right"].set_color("none")
ax4.spines["top"].set_color("none")
ax4.xaxis.set_ticks_position("bottom")
ax4.yaxis.set_ticks_position("left")
ax4.set_xlim(-2*np.pi, 2*np.pi)
ax4.set_ylim(-1.0, 1.0)
plt.title(r"$d$")
plt.scatter(x, y, marker="+", color="b") plt.show()

matplotlib学习日记(十一)---坐标轴高阶应用的更多相关文章

  1. python学习8—函数之高阶函数与内置函数

    python学习8—函数之高阶函数与内置函数 1. 高阶函数 a. map()函数 对第二个输入的参数进行第一个输入的参数指定的操作.map()函数的返回值是一个迭代器,只可以迭代一次,迭代过后会被释 ...

  2. javascript设计模式学习之三—闭包和高阶函数

    一.闭包 闭包某种程度上就是函数的内部函数,可以引用外部函数的局部变量.当外部函数退出后,如果内部函数依旧能被访问到,那么内部函数所引用的外部函数的局部变量就也没有消失,该局部变量的生存周期就被延续. ...

  3. python学习-41 装饰器 -- 高阶函数

    装饰器:本质就是函数.是为其他函数添加附加功能的. 原则:1.不修改被修饰函数的源代码2.不修改被修饰函数的调用方式 --- 装饰器的知识储备 装饰器=高阶函数+函数嵌套+闭包 高阶函数 1.高阶函数 ...

  4. kotlin学习(7)高阶函数

    高阶函数 以另一个函数作为参数或者返回值的函数被称为高阶函数. 函数类型 //隐式声明(省略了变量类型) val sum = (x:Int, y:Int -> x+y) val action = ...

  5. matplotlib学习日记(十)-共享绘图区域的坐标轴

    (1)共享单一绘图区域的坐标轴 ''' 上一讲介绍了画布的划分,有时候想将多张图放在同一个绘图区域, 不想在每个绘图区域只绘制一幅图形,这时候借助共享坐标轴的方法实现在一个绘图区 绘制多幅图形的目的. ...

  6. matplotlib学习日记(十)-划分画布的主要函数

    (1)函数subplot()绘制网格区域中的几何形状相同的子区布局 import matplotlib.pyplot as plt import numpy as np '''函数subplot的介绍 ...

  7. matplotlib学习日记(九)-图形样式

    (一)刻度线定位器和刻度格式器的使用方法 import matplotlib.pyplot as plt import numpy as np from matplotlib.ticker impor ...

  8. js学习日记-各种宽高总结(配图)

    1.窗口和浏览器 window.innerWidth.window.innerHeight   浏览器内部可用宽高 window.outerWidth.window.outerHeight   浏览器 ...

  9. matplotlib学习日记(八)----完善统计图

    (一)再说legend() import matplotlib.pyplot as plt import numpy as np x = np.arange(0, 2.1, 0.1) y = np.p ...

随机推荐

  1. 【mq学习笔记-分布式篇】主从同步机制

    核心类: 消息消费到达主服务器后需要将消息同步到从服务器,如果主服务器Broker宕机后,消息消费者可以从从服务器拉取消息. HAService:RocketMQ主从同步核心实现类 HAService ...

  2. 微服务架构下 CI/CD 如何落地

    本文系云原生应用最佳实践杭州站活动演讲稿整理.杭州站活动邀请了 Apache APISIX 项目 VP 温铭.又拍云平台开发部高级工程师莫红波.蚂蚁金服技术专家王发康.有赞中间件开发工程师张超,分享云 ...

  3. CentOS中安装Docker步骤

    1.安装仓库所需要的软件包 yum install -y yum-utils device-mapper-persistent-data lvm2 2.设置yum加速源 yum-config-mana ...

  4. MySQL(13)---MYSQL主从复制原理

    MYSQL主从复制原理 最近在做项目的时候,因为部署了 MYSQL主从复制 所以在这里记录下整个过程.这里一共会分两篇博客来写: 1.Mysql主从复制原理 2.docker部署Mysql主从复制实战 ...

  5. 基于CFSSL工具创建CA证书,服务端证书,客户端证书

    背景描述 在局域网中部署组件时,想要通过证书来实现身份的认证,确保通信的安全性,可以通过cfssl工具来进行CA证书,服务端证书,客户端证书的创建. 目录 背景描述 部署cfssl工具 下载,上传cf ...

  6. Django-View中绕过RSCF验证

    在Django中对于基于函数的视图我们可以 @csrf_exempt 注解来标识一个视图可以被跨域访问.那么对于基于类的视图,我们应该怎么办呢? 简单来说可以有两种访问来解决 方法一:在类的 disp ...

  7. Linux驱动模块00

    一.驱动基础 1.什么是驱动 能够通过软件操作硬件的这份程序就是驱动 2.Linux驱动和ARM裸机驱动的区别 1)Linux设备驱动工作时依赖于Linux内核, ARM裸机驱动不依赖于Linux内核 ...

  8. 从Paxos到Zookeeper 分布式一致性原理与实践读书心得

    一 本书作者介绍 此书名为从Paxos到ZooKeeper分布式一致性原理与实践,作者倪超,阿里巴巴集团高级研发工程师,国家认证系统分析师,毕业于杭州电子科技大学计算机系.2010年加入阿里巴巴中间件 ...

  9. moviepy音视频剪辑:lum_contrast什么时候使用以及图像处理什么时候需要调整亮度与对比度

    ☞ ░ 前往老猿Python博文目录 ░ 一.亮度.对比度的概念 图像的亮度(luminosity )也即对明度的度量(参考<音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概 ...

  10. PyQt(Python+Qt)学习随笔:利用QWidget部件的palette以及ColorGroup、colorRole局部调整部件的特定范围颜色

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<PyQt(Python+Qt)学习随笔:QWidget部件的 ...