我有一个2D二进制矩阵,我希望将其显示为黑白图。例如,假设我有一个4乘4的矩阵,如下所示:
1 1 0 1
0 0 1 0
1 1 0 1
1 0 0 0
如何将其绘制为黑白矩阵?我的一些输入二进制矩阵的大小为100乘9,所以我理想地需要一个可以推广到不同大小矩阵的解决方案。
答案 0 :(得分:15)
如果您想制作填字游戏类型as shown here(使用网格线和黑白方块),可以使用imagesc
函数gray colormap,并修改{ {3}}喜欢这样:
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');
这是你应该得到的形象:
答案 1 :(得分:4)
我不确定我的问题是否正确,但您可以尝试图像功能,如下所示:
A = [ 1 1 0; 1 0 1; 1 1 1 ];
colormap([0 0 0; 1 1 1 ]);
image(A .* 255);
答案 2 :(得分:1)
尝试使用spy
函数开始。