Why imagesc always interpolates the data?
Show older comments
I have a 3D data
x = [-7.500000000000000,-5.625000000000000,-3.750000000000000,-1.875000000000000,0,1.875000000000000,3.750000000000000,5.625000000000000];
y = linspace(0, 359, 360);
z = ones(360, 8);
figure; imagesc(x, y, z); shading interp; colorbar; colormap('jet');
However, in the plot (screenshot attached), the x axis starts before -8 which is undesrible. Why doesn't it stick to the limits given in the array instead? Does it do interpolation? How can I avoid it?

1 Comment
Jonas
on 1 May 2021
i think your actual problem is that the pixels are centered around the positions you specify. if you want to have n columns exactly between a and b, then the width of each column is width=(b-a)/n and your x positions should be (a+width/2):width:(b-width/2)
Answers (0)
Categories
Find more on MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!