How to display matrix as an image ?

73 Ansichten (letzte 30 Tage)
Suresh Dahal
Suresh Dahal am 22 Aug. 2017
Bearbeitet: Adam am 22 Aug. 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 Kommentare
Baptiste Ottino
Baptiste Ottino am 22 Aug. 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 am 22 Aug. 2017
Bearbeitet: Adam am 22 Aug. 2017
figure; imagesc(A)

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Reen
Reen am 22 Aug. 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