How to display matrix as an image ?

73 visualizzazioni (ultimi 30 giorni)
Suresh Dahal
Suresh Dahal il 22 Ago 2017
Modificato: Adam il 22 Ago 2017
I have a diagonal matrix A of 4x4 and I want to display this as an image, how am I supposed to do that? I tried using imshow(A) and it does not work, please help.
  2 Commenti
Baptiste Ottino
Baptiste Ottino il 22 Ago 2017
Could you be more precise please? What type is your matrix? What error does imshow return? imshow should be the right function here, so the problem is elsewhere.
Adam
Adam il 22 Ago 2017
Modificato: Adam il 22 Ago 2017
figure; imagesc(A)

Accedi per commentare.

Risposte (1)

Reen
Reen il 22 Ago 2017
Try using:
image(A)
That will display the image like a heatmap with each entry being a square. If you want to specify the color of each square, you'll have to use a 3 dimensional array. For example if you use something like:
A(:,:,1) = [255 0 255 0; 0 255 0 255; 255 0 255 0; 0 255 0 255];
A(:,:,2) = [255 0 255 0; 0 255 0 255; 255 0 255 0; 0 255 0 255];
A(:,:,3) = [255 0 255 0; 0 255 0 255; 255 0 255 0; 0 255 0 255];
% A(1,1,:) is the rgb color vector, so white for A(1,1,:) = [255 255 255] and black for A(1,2,:) = [0 0 0]
image(A)
you'll get something that looks like a checkerboard.

Community Treasure Hunt

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

Start Hunting!

Translated by