2010-07-19 22 views
12

Siyah beyaz bir grafik olarak görüntülemek istediğim bir 2D ikili matrisim var. 2B ikili matrisi siyah beyaz bir grafik olarak nasıl görüntüleyebilirim?

1 1 0 1 
0 0 1 0 
1 1 0 1 
1 0 0 0 

nasıl

bu siyah beyaz bir matris olarak çizilebilir: Örneğin, aşağıdaki gibi bir 4-by-4 matrisi var diyelim? Benim giriş ikili matrislerimin bazıları 100 x 9 boyutlarındadır, bu yüzden ideal olarak farklı büyüklükteki matrislere genelleşen bir çözüme ihtiyacım var.

cevap

14

ve burada

mat = [1 1 0 1; 0 0 1 0; 1 1 0 1; 1 0 0 0]; % Your sample matrix 
[r, c] = size(mat);       % Get the matrix size 
imagesc((1:c)+0.5, (1:r)+0.5, mat);   % Plot the image 
colormap(gray);        % Use a gray colormap 
axis equal         % Make axes grid sizes equal 
set(gca, 'XTick', 1:(c+1), 'YTick', 1:(r+1), ... % Change some axes properties 
     'XLim', [1 c+1], 'YLim', [1 r+1], ... 
     'GridLineStyle', '-', 'XGrid', 'on', 'YGrid', 'on'); 

ve görüntü var sen almalısınız:

siyah beyaz kareler) Eğer axes properties şöyle imagesc fonksiyonunu bir gray colormap kullanın ve değiştirebilirsiniz

1

Belki de başlamak için spy işlevini deneyin.

4

Sorunuzun doğru var emin değilim, ama böyle, görüntü işlevini deneyebilirsiniz: Eğer ızgara hatları ile bir bulmaca tipi arsa as shown here (olmak için

A = [ 1 1 0; 1 0 1; 1 1 1 ]; 
colormap([0 0 0; 1 1 1 ]); 
image(A .* 255); 
+0

çok teşekkür ederim. Bu yardımcı oldu ama tam olarak ihtiyacım olduğu gibi, bu gibi bir şeye ihtiyacım var (lütfen URL'yi bulun): http://www.mathworks.com/access/helpdesk/help/techdoc/ref/pcolor1.gif – sahamdan

İlgili konular