Python:matplotlib库中的pyplot模块

matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图。其中,matplotlib的pyplot模块一般是最常用的,可以方便用户快速绘制二维图表。

中文文档:https://www.osgeo.cn/matplotlib/api/_as_gen/matplotlib.pyplot.html

英文文档:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.imshow.html#matplotlib.pyplot.imshow

下面主要是神经网络显示数据集样本中经常用到的函数:

1 matplotlib.pyplot.imread(fname, format=None)

import matplotlib.pyplot as plt

img = plt.imread(fname, format=None)

参数:

  • fname:要读取的图像文件。以读取二进制模式打开的文件名、URL或类似文件的对象。
  • format(可选):用于读取数据的图像文件格式。如果没有给出,则从文件名中推断格式。如果无法推导出任何结果,则尝试使用png。

返回:读取得到的图像数据为numpy.array,颜色通道顺序为RGB。通道格式为(H,W,C)

  • (m,n):灰度图像,单通道,不显示数字。m*n为图像尺寸。
  • (m,n,3):RGB图像,通道数为3
  • (m,n,4):RGBA图像,通道数为4

2 matplotlib.pyplot.imshow(X, cmap=None)

import matplotlib.pyplot as plt

X = plt.imread(fname, format=None)
plt.imshow(
        X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, 
        vmax=None, origin=None, extent=None, shape=None, filternorm=1, filterrad=4.0, 
        imlim=None, resample=None, url=None, *, data=None, **kwargs
)

参数:一般前两个用得最多,故只记录前两个。

  • X:数组或PIL图像。图像数据,支持的数组形状为:
  1. (m,n):具有标量数据的图像。使用颜色映射可视化数据。
  2. (M,N,3):带有RGB值(float或uint8)的图像。
  3. (M,N,4):具有RGBA值(float或uint8)的图像,即包括透明度。

注:

前两个维度(m,n)为图像的行和列。RGB(A)值应在范围内 [0,1.0] 浮点数(float)或 [0,250] 整数(int)。超出范围的值将被剪裁到这些边界。

  • cmap(optional): str或colormap。

camp = ‘gray’:显示灰度图

3 matplotlib.pyplot.show()

import matplotlib.pyplot as plt

X = plt.imread(fname, format=None)
plt.imshow(X, cmap=None)
plt.show()

此函数的作用就是显示图片。若plt.imshow()后面没有跟plt.show(),那么图片是无法显示的

4 matplotlib.pyplot.pause(interval)

import matplotlib.pyplot as plt

X = plt.imread(fname, format=None)
plt.imshow(X, cmap=None)
plt.pause(interval)

此函数用于控制图像显示的时间。参数:

  • interval = 0:不关闭窗口,plt.pause(0)等同于plt.show()

  • interval != 0:图像显示时间,以秒为单位。

5 matplotlib.pyplot.subplot(nrows, ncols, index)

import matplotlib.pyplot as plt

X = plt.imread(fname, format=None)
plt.subplot(nrows, ncols, index)
plt.imshow(X, cmap=None)
plt.show()

此函数可以用于在一个窗口显示多幅图像。

参数:

  • nrows和ncols表示一张图被分为nrows*ncols个区域
  • index表示子图所处的位置,起始位置索引为1,即1<=index<=nrows*ncols。

注:此函数必须在imshow()函数之前,要不然无效。

6 matplotlib.pyplot.savefig()

import matplotlib.pyplot as plt

X = plt.imread(fname, format=None)
plt.savefig(
        fname, dpi=None, facecolor='w', edgecolor='w', orientation='portrait', 
        papertype=None, format=None,transparent=False, bbox_inches=None, pad_inches=0.1, 
        frameon=None, metadata=None
)

此函数用于保存当前图像。

参数:

  • fname:一个字符串,包含指向文件名的路径,或类似于python文件的对象,或可能与后端相关的对象。

7 matplotlib.pyplot.axis()

matplotlib.pyplot.axis('off')  # 不显示坐标轴

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(修仙之路:python篇)