给定单个参数的子图的行为是什么?

时间:2019-06-05 10:25:53

标签: matplotlib subplot

OpenCV.org教程具有以下示例:

import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt

img = cv.imread('drawing.png')
rows,cols,ch = img.shape

pts1 = np.float32([[50,50],[200,50],[50,200]])
pts2 = np.float32([[10,100],[200,50],[100,250]])

M = cv.getAffineTransform(pts1,pts2)
dst = cv.warpAffine(img,M,(cols,rows))
plt.subplot(121),plt.imshow(img),plt.title('Input')
plt.subplot(122),plt.imshow(dst),plt.title('Output')
plt.show()

subplot()的作用是什么? Docs将其定义为

  

可以调用Matplotlib subplot()函数来绘制两个或多个   在一个图中绘制。 Matplotlib支持所有类型的子图   包括2x1垂直,2x1水平或2x2网格。

提供的示例中的参数说明了高度与长度之比,第三个参数用作索引。但这对我来说毫无帮助。

1 个答案:

答案 0 :(得分:0)

按照the documentation

subplot(pos, **kwargs)

  

pos是一个三位数的整数,其中第一位数是   行,第二个是列数,第三个是索引   子图。即fig.add_subplot(235)与fig.add_subplot(2,   3,5)。请注意,此格式的所有整数必须小于10   工作。

因此,plt.subplot(121)创建了一个图形,该图形具有连续两行(1行,两列)的两个轴,并使第一个(最左侧)轴成为当前轴。