How do I define the y axis of imagesc as integers and not fractions?

I have 2x1e7 data but imagesc makes the y axis range from 0.5 to 2.5. How can I make it 0 to 2? And what is the reason the default is 0.5 to 2.5 when there are 2 data?

2 Kommentare

imagesc(C) displays the data in array C as an image that uses the full range of colors in the colormap. Each element of C specifies the color for one pixel of the image. The resulting image is an m-by-n grid of pixels where m is the number of rows and n is the number of columns in C. The row and column indices of the elements determine the centers of the corresponding pixels.
The center of the pixels in your case are 1.0 and 2.0 and the width of each pixel is 1 pixel (0.5 pixels on each side). So it starts from 0.5 to 1.5 for the first pixel and 1.5 to 2.5 for the second one.
I understand, thanks.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

What Simon says is correct. If you only want the center ticks, you can specify them explicitly:
A = rand(2,6);
imagesc(A);
yticks([1 2])

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2022a

Tags

Gefragt:

am 11 Mär. 2022

Kommentiert:

am 12 Mär. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by