I have a Matrix with ones and zeroes. How to plots the matrix with zeroes as black spot and ones as whote dots as shown in figure below.

 Réponse acceptée

Try this —
M = randi([0 1],25)>0; % Logical Matrix
[r,c] = find(M);
figure
scatter(c, r, 75, 'sw', 'filled')
set(gca, 'Color','k', 'YDir','reverse')
axis([0 size(M,1)+1 0 size(M,2)+1])
% axis('equal')
The spy function works for this, however it does not have the ability to fill the markers, so I went with scatter instead.
figure
spy(M,'sw');
set(gca, 'Color','k')
hs.MarkerFaceColor = 'w';
Experiment to get the result you want.
.

Plus de réponses (3)

millercommamatt
millercommamatt le 15 Sep 2021
FH = figure;
imagesc(yourMatrix);
colormap(FH,[0,0,0;1,1,1]);
M = magic(7);
B = M > mean(M);
colormap('gray')
imagesc(B)
axis square
Matt J
Matt J le 15 Sep 2021
Modifié(e) : Matt J le 15 Sep 2021
imshow(yourMatrix)

Catégories

En savoir plus sur Graphics Performance dans Centre d'aide et File Exchange

Produits

Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by