subplots画图

matplotlib是python领域中很常见的绘图模块

几乎只在需要用到时查手册,这里记录一些比较常用的函数,有机会再来系统学习一下

以一段画图代码为例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def plot_data(X):
'''随机画100个数字'''

# np.random.choice(arrange,size),返回ndarray
index=np.random.choice(range(5000),100)
images=X[index] # 随机选择100个样本

# ax_array为Axes对象
fig,ax_array=plt.subplots(10,10,sharex=True,sharey=True,figsize=(8,8))

for r in range(10):
for c in range(10):
# matshow() 第一个参数为要显示的矩阵
#Display an array as a matrix in a new figure window
ax_array[r,c].matshow(images[r*10+c].reshape(20,20),cmap='gray_r')
plt.yticks([])
plt.xticks([])
plt.show()

1.matplotlib.pyplot.subplots():创建一个figure和一组subplots

参数:

  • nrows,ncols:axes的数量,这里是10*10
  • sharex,sharey:共享所有axesX轴和y轴的属性,设置True开启

返回值:

  • figure
  • ax:一个或多个axes对象

* axessubplot的区别:简单来说,如果把figure看做是电脑桌面,那么axes就是可自由移动的图标,subplot则是不可自由移动的图标。

2.matplotlib.pyplot.matshow():在窗口用矩阵显示一个数组

参数:

  • array-like(M,N):要显示的(M,N)矩阵
-------------End-------------
梦想总是要有的,万一有人有钱呢?