Changing pixel figure coordinates when using imshow

When I use imshow to plot the pixels represented by a matrix, each pixel is centered in the figure at its matrix coordinates (e.g. the pixel on row 1, column 1 is centered at figure coordinates (1,1)).
Is it possible to change this so that a specific corner of each pixel is positioned at its matrix coordinates? For example, can the pixel on row 1, column 1 be plotted with its lower right corner at figure coordinates (1,1), and so on for all the remaining pixels?

Risposte (1)

After you call it, try this:
axis xy
  • xy — Default direction. For axes in a 2-D view, the y-axis is vertical with values increasing from bottom to top.
  • ij — Reverse direction. For axes in a 2-D view, the y-axis is vertical with values increasing from top to bottom.

1 Commento

Thanks for this tip! This is much more compact than using set(gca,'Ydir','reverse').
I actually discovered that using the command image(x,y,C) answers my question--it lets you control the figure coordinates of the plotted image pixels. Sorry if the original question wasn't clear.

Accedi per commentare.

Prodotti

Release

R2020a

Richiesto:

il 31 Lug 2020

Commentato:

il 2 Ago 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by