matplotlib 操作子图(subplot,axes)
Matplotlib 中文用户指南 3.3 使用 GridSpec 自定义子图位置
- ax:matplotlib.axes._subplots.AxesSubplot,的基本操作
ax.set_xticks([]), ax_set_yticks([])
:关闭坐标刻度ax.axis('off')
:关闭坐标轴ax.set_title()
:设置标题
1. subplots
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(8, 4))
ax[0].plot(...)
ax[0].set_xlabel(...)
ax[0].set_title(...)
ax[1].plot(...)
ax[1].set_xlabel(...)
...
fig, (ax1, ax2, ax3) = plt.subplots(3, 1, sharex=True)
更一般的做法(也是matlab的风格)是这样的:
fig = plt.figure() # 创建一个figure对象,底下的一切显示均在此figure上完成
plt.subplot(121)
plt.imshow(img1)
plt.subplot(122)
plt.imshow(img2)
plt.show()
# 当然放在一个range里边
for i in range(ndim):
plt.subplot(ndim//5, 5, i+1)
plt.hist()
2. subplot2grid
subplot2grid
# 以下两条语句等价 ax = plt.subplot2grid((2,2),(0, 0))
ax = plt.subplot(221) # 下标从 0 开始- colspan、rowspan 与 索引的对应关系
import matplotlib.pyplot as plt def disable_axis(ax):
ax.set_xticks([])
ax.set_yticks([])
# ax.axis('off') def set_title(ax, title):
ax.set_title(title) def subplot2grid_demo():
ax1 = plt.subplot2grid((3, 3), (0, 0), colspan=2)
disable_axis(ax1)
set_title(ax1, 'ax1')
ax2 = plt.subplot2grid((3, 3), (1, 0))
disable_axis(ax2)
set_title(ax2, 'ax2')
ax3 = plt.subplot2grid((3, 3), (1, 1))
disable_axis(ax3)
set_title(ax3, 'ax3')
ax4 = plt.subplot2grid((3, 3), (0, 2), rowspan=2)
disable_axis(ax4)
set_title(ax4, 'ax4')
ax5 = plt.subplot2grid((3, 3), (2, 0), colspan=3)
disable_axis(ax5)
set_title(ax5, 'ax5')
# plt.xticks([])
# plt.yticks([])
# plt.axis('off')
plt.show() if __name__ == '__main__':
subplot2grid_demo()
3. GridSpec:方便的切片操作
GridSpec 提供了十分方便的切片操作,实现上述功能,则只需如下代码:
def gridspec_demo():
gs = gridspec.GridSpec(3, 3)
ax1 = plt.subplot(gs[0, :2])
ax2 = plt.subplot(gs[1, 0])
ax3 = plt.subplot(gs[1, 1])
ax4 = plt.subplot(gs[0:2, 2])
ax5 = plt.subplot(gs[2:, :])
plt.show()
matplotlib 操作子图(subplot,axes)的更多相关文章
- (转)Matplotlib的子图subplot的使用
转:https://www.jianshu.com/p/de223a79217a 前言 Matplotlib的可以把很多张图画到一个显示界面,这就设计到面板切分成一个一个子图.这是怎么做到的呢.mat ...
- Matlab绘制子图subplot使用攻略
参考:https://jingyan.baidu.com/article/915fc414ad794b51394b20e1.html Matlab绘制子图subplot使用攻略 听语音 原创 | 浏览 ...
- matplotlib 的 subplot, axes and axis
fig = plt.figure('多图', (10, 10), dpi=80) #第一个指定窗口名称,第二个指定图片大小,创建一个figure对象 plt.subplot(222) #2*2的第二个 ...
- matplotlib ----- 多子图, subplots
这一篇讲的比较详细. http://matplotlib.org/examples/pylab_examples/subplots_demo.html 官方文档给出的subplots用法, http: ...
- matplotlib添加子图(拼图功能)
我们已经知道,matplotlib是python中的一个十分好用的作图库,它的简单的使用方法可以在之前的随笔中找到.传送门:https://www.cnblogs.com/chester-cs/p/1 ...
- matplotlib画子图时设置总标题
matplotlib subplots绘图时 设置总标题 :fig.suptitle(name)
- matplotlib调整子图大小
因为子图太多而导致每个子图很小,很密,如何调整
- matplotlib绘制子图
fig,subs = plt.subplots(2,2) subs[0][0].plot(data_math_C1) subs[0][0].set_title('C_1 曲线') subs[0][1] ...
- python使用matplotlib:subplot绘制多个子图
1 问题描述 matploglib 能够绘制出精美的图表, 有些时候, 我们希望把一组图放在一起进行比较, 有没有什么好的方法呢? matplotlib 中提供的 subplot 可以很好的解决这个问 ...
随机推荐
- Jenkins 构建 coding项目,插件
安装插件:http://updates.jenkins-ci.org/download/plugins/coding-webhook/
- 关于nohup 和 &的使用
nohup 是 no hang up 的缩写,意思是不挂断运行,一直运行下去,永久运行下去,但是注意并没有后台运行的功能 & 是在后台运行的意思 单独使用一个命令,还不能在终端关闭的时候,让 ...
- np.linspace
来自:有一种宿命叫无能为力 在指定的间隔内返回均匀间隔的数字.(返回num个样本数据,在[start, stop]). 函数形式: linspace(start, stop, num = 50, en ...
- Android之动态改变控件大小
利用getLayoutParams()方法和setLayoutParams()方法.三步曲:1.首先利用getLayoutParams()方法,获取控件的LayoutParams.eg:LayoutP ...
- 20170711xlVBA批量制图一例
Public Sub GatherDataPicker() Application.ScreenUpdating = False Application.DisplayAlerts = False A ...
- c#将Excel数据导入到数据库的实现代码
这篇文章主要介绍了c#将Excel数据导入到数据库的实现代码,有需要的朋友可以参考一下 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: 代码: 代码如下: using Syste ...
- java plsql 调用oracle数组类型
首先当然是在oracle中建立type CREATE OR REPLACE TYPE cux_proxy_bid_award_rec IS OBJECT ( trading_partner_id NU ...
- SSH 本地端口转发
有时,绑定本地端口还不够,还必须指定数据传送的目标主机,从而形成点对点的"端口转发".为了区别后文的"远程端口转发",我们把这种情况称为"本地端口转发 ...
- PHP:第一章——PHP中静态变量和常量
<?php header("Content-Type:text/html;charset=utf-8"); /******************************** ...
- Awk 从入门到放弃(4) — Aws 格式化
转:http://www.zsythink.net/archives/1421 print & printf的区别:printf不带\r\n 在awk当中,格式替换符的数量必须与传入的参数的数 ...