Imagesc & plot matrix
5 views (last 30 days)
Show older comments
Hello, actually i'm trying to plot a matrix. The values of this matrix are variable between -1 and 1 (i'm working on the correlation between different data). in figure:
this is a matrix 5x5 but to who has never seen the numerical matrix i think that it is difficult to understand. i want to know if exists a way to know for example what i'm correlating between the value 0.5 1.5, i mean i know what i'm correlating but i want that also the others watching this plot can understand it easy. another thing that i'ven't understood is what the numbers between 0.5 and 5.5 stay for.
pcolor can be used in this case?how?
thank you for the help
1 Comment
Image Analyst
on 9 Dec 2011
Explain what you mean by "i want that also the others watching this plot can understand it." I'm sure others who would view your images or plots would understand what you did especially if you explained it to them, wouldn't they?
Accepted Answer
Sven
on 9 Dec 2011
Salvatore, try this:
Im = [1.0000 0.7944 0.7361 0.8205 0.4192
0.7944 1.0000 0.8663 0.6780 0.3435
0.7361 0.8663 1.0000 0.7351 0.3311
0.8205 0.6780 0.7351 1.0000 0.3555
0.4192 0.3435 0.3311 0.3555 1.0000]
imagesc(Im)
cHandle = colorbar;
caxis([-1 1]) % This sets the visible range of colours
set(gca,'XTick',1:5,'YTick',1:5) % This sets the tick locations
You can also use different colours as seen in:
doc colormap
You can even supply your own colormap by building a matrix of N-by-3 values between 0 and 1.
The reason why your X/Y axes go from 0.5 to 5.5 is because every pixel has a size of 1 pixel. So the first pixel has a central location at [1,1]... but in order to show the whole pixel (with a width of 1 pixel), it has to start at location [0.5,05] and stretch to location [1.5,1.5]
A good explanation of this (with pictures) is at:
Doc > Image Processing Toolbox > Introduction
0 Comments
More Answers (2)
Salvatore Turino
on 9 Dec 2011
4 Comments
Sven
on 9 Dec 2011
Yes, you can. see "doc colormap" or type "lines(5)", "summer(5)" and "gray(5)" into the command window and see the output
Salvatore Turino
on 9 Dec 2011
2 Comments
Sven
on 9 Dec 2011
Sure, this is called an index colour map. Note that this is a different way of representing colour to what this question originally asked. I think a good idea to keep topics separate (and therefore clear) will be to accept an answer here and ask a new question if needed.
A really good place to start will be at "doc gray2ind". It might answer this second question for you, but if not you can always start a new question on that topic.
Sven
on 9 Dec 2011
And I think your best resource might be to start at:
Doc > Image Processing Toolbox > Introduction
There are two topics there "Expressing Image Locations" and "Image Types In the Toolbox" which give great examples of the pixel location question and this colour representation question.
See Also
Categories
Find more on Orange 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!