You are reading an old version of the documentation (v3.1.1). For the latest version see
Version 3.1.2
Fork me on GitHub

Table of Contents


matplotlib.pyplot.imread(fname, format=None)[source]

Read an image from a file into an array.

fname : str or file-like

The image file to read: a filename, a URL or a file-like object opened in read-binary mode.

format : str, optional

The image file format assumed for reading the data. If not given, the format is deduced from the filename. If nothing can be deduced, PNG is tried.

imagedata : numpy.array

The image data. The returned array has shape

  • (M, N) for grayscale images.
  • (M, N, 3) for RGB images.
  • (M, N, 4) for RGBA images.


Matplotlib can only read PNGs natively. Further image formats are supported via the optional dependency on Pillow. Note, URL strings are not compatible with Pillow. Check the Pillow documentation for more information.