Equivalent to matlab's imagesc in matplotlib?


Question

I am coming to Python and numpy and matplotlib from a Matlab background. One function in matlab that I use all the time is imagesc. Is there an exact equivalent to this somewhere in matplotlib? I know about imshow and pcolor, but the first doesn't allow you to easily set the units of the axes like imagesc, and the second makes you set the x- and y-coordinates of the boundaries of the pixels, rather than the centers of the pixels, which I do not find intuitive.

Basically, if I have an image that I want to display with x- and y-axis labels that are not pixel numbers but are numerical, like distance in mm, what is the easiest way to do it in matplotlib?

1
27
5/20/2013 5:59:09 PM

Accepted Answer

You want the extent kwarg

ax.imshow(data, extent=[0, 1, 0, 1])

See Imshow: extent and aspect for a more detailed example.

25
5/23/2017 12:10:21 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon