Adding numeric values to imagesc
Show older comments
How do I display the actual numeric values of a matrix plotted using 'imagesc'? I would like to have a number displayed in each colored box, representing a value of row and column plotted using 'imagesc' function.
Answers (3)
Image Analyst
on 31 Mar 2015
0 votes

4 Comments
Image Analyst
on 31 Mar 2015
What is the "value of the matrix inside" if it's not the gray level or RGB information? You cannot build this capability into imagesc() or imshow() since those are built-in functions that you don't want to mess with.
Tasi
on 31 Mar 2015
Image Analyst
on 31 Mar 2015
imagesc() displays pixels. There is no way you can fit all of that into a single pixel and see it on your screen, not even with a microscope. The only way is to blow up the pixels to big patches like I showed you with the im2html program.
Tamar Regev
on 27 Feb 2024
0 votes
Just use the text function:
M = [1,2,3;4,5,6;7,8,9];
figure
figure
imagesc([1:3],[1:3],M)
set(gca,'XTick',[1:3],'YTick',[1:3],'fontsize',20)
for i = 1:3
for j = 1:3
text(i,j,num2str(M(i,j)),'FontSize',20)
end
end
Steven Lord
on 27 Feb 2024
0 votes
This function didn't exist when the question was originally asked, but I suspect the original poster had something like heatmap (introduced in release R2017a) in mind.
1 Comment
Tamar Regev
on 27 Feb 2024
gotcha! Good thing that this function exists now :)
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!